關於const A* f(const A* pSrc,A* const pDst,int v=2,...) const throw();

昨天面試碰到一道const題目:

class A

{

public:

const A* f(const A* pSrc,A* const pDst,int v=2,...) const throw();

}a;

請按順序指出每個const的意義:

const 在c中的意思是一個不可更改的普通變量,c 中const用法主要有定義常量修飾函數參數,修飾返回值等3個作用;c++中const 還能修飾函數定義體,定義類中某個函數爲恆態函數,被const 修飾的東西都受到強制保護,可以預防意外的變動,能提高程序的健壯性。const 聲明常量時必須同時初始化

const throw()在這裏表示無論如何此成員函數不拋出異常。

如此一來:const A* pSrc表示指針指向的值不可更改,A* const pDst表示指針不可更改。const A* f()表示f函數爲恆態函數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章