C++函数声明常数变量
问题描述:
可能重复:
What is the difference between const int*, const int * const, and int const *?C++函数声明常数变量
我想了解如何const
作品函数参数。 void function(int const *&i);
和void function(const int *&i);
之间的区别是什么?如果您举了一个实施例和i
的用法,我将不胜感激。
答
它们是相同的,从右侧刚读它到左:
第一个例子:i是一个常数整数的指针的引用。
第二个例子:我是一个整数常量指针的引用。
const的放置只改变指针两侧的东西。例如:
const int* i
指:i是一个指针指向一个恒定整数
而int* const i
指:i是一个常量指针为整数。
答
它们都是一样的。
它意味着对指向const int的指针的引用。
我可以给这个函数赋i一个变量吗,如果是的话,怎么样? – ibrahim 2011-05-02 19:39:17
@ibrahim:当然可以。你可以照常做。像这样'i = p;'其中'p'是可隐式转换为'const int *'的某个值。 – 2011-05-02 20:22:00