淡水求咸

博客园已经停止更新,请移步 http://lovecjh.com/

导航

2012年1月5日

C++关键字mutable

摘要: Mutable(1)mutable的意思是“可变的,易变的”,跟C++中的const是反义词。(2)在C++中,mutable也是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中实例说明:#include <iostream>using namespace std;class TestMutable{public: TestMutable(){i=0;} int Output() const { return i++; //error C2166: l-value specifies const ob... 阅读全文

posted @ 2012-01-05 21:26 深圳彦祖 阅读(4381) 评论(0) 推荐(1) 编辑

C++关键字explicit

摘要: explicit的中文解译是:详尽的;清楚的;明确的。那么explicit在C++中是什么意思呢?Explicit(显示的)(1)explicit可以禁止“单参数构造函数”被用于自动类型转换,有效的防止了构造函数的隐式转换带来的错误。(2)explicit只对构造函数起作用,用来抑制隐式转换。(3)所有的单参数的构造函数都必须是explicit的,以避免后台的类型转换。用实例说明上面两点:#include <iostream>using namespace std;class People{public: People(int age){} People(string name). 阅读全文

posted @ 2012-01-05 21:08 深圳彦祖 阅读(1505) 评论(0) 推荐(0) 编辑