zoukankan      html  css  js  c++  java
  • 类型转换函数

    标准数据类型之间会进行隐式的类型安全转换

    转换规则如下

    char ->short

    char/short ->int ->unsigned int -> long ->unsigned long ->float ->double

    char+short -> int

    再论构造函数

    构造函数可以定义不同类型的参数

    参数满足下列条件时称为转换构造函数

    有且仅有一个参数

    参数是基本类型

    参数是其它类类型

    编译器的行为

    工程中通过explicit关键字杜绝编译器的转换尝试

    转换构造函数被explicit修饰时只能进行显示转换

    转换方式

    static_cast<ClassName>(value);

    ClassName(value);

    (ClassName)value;//不推荐

    类型转换函数

    c++类中可以定义类型转换函数

    类型转换函数用于将类对象转换为其它类型

    语法规则:

    operator Type ()

    {

      Type ret;

      //...

      return ret;

    }

    与转换构造函数具有同等的地位

    使得编译器有能力将对象转换为其它类型

    编译器能够隐式的使用类型转换函数

    无法抑制隐式的类型转换函数调用

    类型转换函数可能与转换构造函数冲突

    工程中以Type toType()的公有成员代替类型转换函数

  • 相关阅读:
    MySQL主主同步方案
    Mysql增量备份与恢复
    配置合适的存储引擎
    基于Amoeba读写分离
    部署myaql主从异步复制
    MySQL完全备份操作
    echo 命令详解
    ELK 基本部署
    zabbix 简介
    基于 Git Tag 发布及回滚代码
  • 原文地址:https://www.cnblogs.com/sugarWill666/p/9108800.html
Copyright © 2011-2022 走看看