摘要: C++中的explicit关键字只能用于修饰只有一个参数的类构造函数 , 它的作用是表明该构造函数是显示的, 而非隐式的,跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下为implicit(隐式)。 关于explicit关键字,先看看MSDN上的解释: This ke 阅读全文
posted @ 2017-03-07 10:19 滴水瓦 阅读(2151) 评论(1) 推荐(0) 编辑
摘要: 在标准C++11之前的枚举是继承C的,枚举类型不是类型安全的。枚举类型被视为整数,这使得两种不同的枚举类型之间可以进行比较。 一、C中enum类型的局限语法: 1、非强类型作用域上面两种不同类型的枚举都含有a枚举常量,在相同作用域会发生冲突,编译会报错2、允许编译器隐式类型转换if(type1::a 阅读全文
posted @ 2017-03-07 10:19 滴水瓦 阅读(2497) 评论(0) 推荐(0) 编辑
摘要: C++11为了提高代码执行效率做了一些改善。这种改善之一就是:生成常量表达式,允许程序利用编译时的计算能力。假如你熟悉模板元编程,你将发现constexpr使这一切变得更加简单。constexpr使我们很容易利用上编译时编程的优势。常量表达式主要是允许一些计算发生在编译时,即发生在代码编译而不是运行 阅读全文
posted @ 2017-03-07 10:18 滴水瓦 阅读(9545) 评论(1) 推荐(4) 编辑