const std::vector<T> 和 std::vector<T> const 有什么区别?
What is the difference between const std::vector<T> and std::vector<T> const?
我认为声明 const<vector>
的唯一方法是:
const std::vector<T> v;
const
适用于它左边的东西,除非左边没有东西然后它适用于它右边的东西。
所以,const int a=1;
和 int const a=1;
是相等的。
const int *b
和int const *b
是相等的(指向常量int
的指针),但不同于int * const b
,它是指向非常量[的常量指针=15=].
这适用于所有数据类型,我选择int
因为它比std::vector<T>
更容易输入。
我认为声明 const<vector>
的唯一方法是:
const std::vector<T> v;
const
适用于它左边的东西,除非左边没有东西然后它适用于它右边的东西。
所以,const int a=1;
和 int const a=1;
是相等的。
const int *b
和int const *b
是相等的(指向常量int
的指针),但不同于int * const b
,它是指向非常量[的常量指针=15=].
这适用于所有数据类型,我选择int
因为它比std::vector<T>
更容易输入。