已采纳回答 / onemoo
你要理解变量类型的重要性。p的类型是指向const int的指针,如果你解引用这个指针的话,得到的会是const int类型。p的类型决定了这样的性质,这性质与p到底指向谁是无关的。所以即使p指向的是个非const的int对象,但如果你通过p来访问所指的内容的话,这内容还是会被当作const的。就是说你无法通过*p来修改它,所谓的“*p的值无法修改”就是这个意思。当然 i 本身是普通的int,自然可以通过 i 来任意修改了。故const int指针可以指向const int对象,也可以指向普通的int对象...
2015-07-09
已采纳回答 / onemoo
参数列表中的 *arr 是可以写成 int arr[] 的。在函数声明的参数列表中声明的数组参数,是会被视作指针的。抱歉,请忽略上一条回答,我没有注意到这个是C++问题!刚才的回复中可加入的限定符是C语言的特性,在C++中没有这个特性。在C++14中,也仅能在[]中加入constexpr这一个限定符。
2015-07-07