可能重复:
What is the difference between const int*, const int * const, and int const *?
我试图了解const
在函数参数中的工作原理。 void function(int const *&i);
和void function(const int *&i);
之间有什么区别?如果您举例说明它们的实现以及i
的使用情况,我将不胜感激。
答案 0 :(得分:3)
它们是相同的,只是从右到左阅读:
第一个例子:i是对常量整数的指针的引用。
第二个例子:i是对整数常量指针的引用。
const的放置只会改变指针两侧的内容。例如:
const int* i
表示:i是指向常量整数
的指针而int* const i
表示:i是一个指向整数的常量指针。
答案 1 :(得分:0)
这些声明是等效的。有关详细信息,请参阅this page。
答案 2 :(得分:0)
const正确性的最佳位置是 - C++ FAQ Lite
答案 3 :(得分:0)
他们都是一样的。
它表示对指向const int的指针的引用。