摘要: C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生。声明为explicit的构造函数不能在隐式转换中使用。C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色。1.是个构造器 2. 是个默认且隐含的类型转换操作符。所以, 有时候在我们写下如 ClassA a = b, 这样的代码, 且恰好b的类型正好是ClassA单参数构造器的参数类型, 这时候编译器就自动调用这个构造器, 创建一个ClassA的对象。#include "stdafx.h"class Test1{public: T 阅读全文
posted @ 2013-11-27 17:51 taylor.yan 阅读(308) 评论(0) 推荐(0) 编辑
摘要: C++操作符介绍优先级运算符含 义示 例结合方向要求运算对象的个数可重载性1::全局解析::x自右至左一元操作符不可重载::类域解析X::x自左至右二元操作符不可重载2.直接成员选择运算符s.len自左至右二元操作符不可重载( )圆括号可重载( )函数调用rand( )( )类型构造int( ch)[ ]下标运算符a[i]二元操作符->间接成员选择运算符p->len二元操作符++后增n++自右至左一元操作符- -后减n- -一元操作符3!逻辑非运算符!p自右至左一元操作符可重载~按位取反运算符~s++前增运算符++n- -前减运算符- -n-负号运算符-n*反引用运算符*p& 阅读全文
posted @ 2013-11-27 17:34 taylor.yan 阅读(218) 评论(0) 推荐(0) 编辑