常量指针不能作为右值赋值给非常量指针
Posted drunknbeard
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常量指针不能作为右值赋值给非常量指针相关的知识,希望对你有一定的参考价值。
#include<iostream>
using namespace std;
int main(){
int b[4]={1,2,3,4};
const int* a = b;
int * c = a;//error: invalid conversion from ‘const int*‘ to ‘int*‘
return 0;
}
原因很简单,因为常量指针是指向常量的指针,const是一个限定符,你给自己加上这个限定,不代表你可以给别人加上这个限定,因此,如果别人不是指向const的指针,你就不能强迫别人也指向const。
以上是关于常量指针不能作为右值赋值给非常量指针的主要内容,如果未能解决你的问题,请参考以下文章