const用法

来源:互联网 发布:知轩藏书百度网盘 编辑:程序博客网 时间:2024/06/06 09:55

Const用法

1 Const指针

Const char* p ;//表示指针指向常量

Char* const p;//表示指针本身是常量

Const char* const p;//指针和指针指向的都是常量

 

Void f1(const Widget* pw);//pw是指向常量的widget对象

Void f1(Widget const* pw);//同上

注意:上面两种写法不相同,意义一样。

 

Typedef可能会带来意想不到的结果,需要注意:

Typedef string* pstring;

Const pstring ps;//其实,这个const是用来修饰pstring的,这个声明等价于pstring const ps,指的是指向const常量的指针。

 

2  Const函数

两个函数如果只是const特性不同,可以被重载。如:

Const char& operator[](std::size_tposition) const;//操作const对象

Char& operator[](std::size_t position);//操作non-const对象

第一个函数可用于const引用做形参的函数中形参的操作,其中第一个const表示返回类型是const,第二个const表示函数对const对象进行操作。

Void func(const WiepTlmTransfer& _tran){

       Cout<< const_cast< WiepTlmTransfer&>(_trans).summary()<<endl;

}

 

Ostringstream summary() const {

}

0 0