考虑一段代码
int main(int argc,char* argv[]){
int *arrPtr = new int[4];
for (int i=0;i<4;i++)
arrPtr[i]=i*2;
for (int i=0;i<10;i++){
arrPtr++;
cout<<"arrPtr ["<<i<<"]\t"<<*arrPtr<<endl;
}
cout<<endl;
return 0; }
当我编译这个程序
g++ main.cpp -o main && ./main
它给了我
arrPtr [0] 2 arrPtr [1] 4 arrPtr [2] 6 arrPtr [3] 0 arrPtr [4] 135145 arrPtr [5] 0 arrPtr [6] 0 arrPtr [7] 0 arrPtr [8] 0 arrPtr [9] 0
当 arrPtr 未指向“有效”元素时,我希望能够检测(抛出或检查)。在上面的代码中,最后一个有效元素是 arrPtr[3]。
请不要“我也是”的答案!