可能重複:
What is the difference between const int*, const int * const, and int const *?
const int = int const?返回指針向量?
什麼是以下三者的區別?
vector<int const *> f() { ... }
vector<const int *> g() { ... }
vector<int * const> h() { ... }
可能重複:
What is the difference between const int*, const int * const, and int const *?
const int = int const?返回指針向量?
什麼是以下三者的區別?
vector<int const *> f() { ... }
vector<const int *> g() { ... }
vector<int * const> h() { ... }
一個人的名字是f,另一個名字是g。而已。
const將應用於左側的元素。在左側沒有元素的情況下,將其應用於右側的元素。
什麼都沒有(除了函數的名字)。
在這兩種情況下,const
都會修改int
,而不是指針。
沒有區別; int const
和const int
意味着同樣的事情。
通常,const
是指在其左的類型:一個int const *
是一個指針指向一個恆定整數,而不是恆定指向(非恆定)的整數。把const
作爲最初的例子是一種特殊情況,它指的是右側的類型。
這可能會幫助你使用常量指針和常量指針http://www.codeguru.com/cpp/cpp/cpp_mfc/general/article.php/c6967 – L7ColWinters 2012-01-27 16:10:33
更新了問題。 – 2012-01-27 16:16:34
可能不是一個確切的副本。答案是btw,前兩個是相同的,第三個是錯誤,因爲int * const不符合std :: vector放在包含類型上的要求(特別是可指定性) – 2012-01-27 19:02:38