首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

一个数组越界的有关问题

2012-02-24 
一个数组越界的问题classA{public:inti}classB{public:A*a}程序如下:...B*bnewB[2]b[0].anewA[2]b[0

一个数组越界的问题
class   A
{
public:
        int   i;
}
class   B
{
public:
        A*   a;
}

程序如下:
...
B*   b   =   new   B[2];
b[0].a   =   new   A[2];
b[0].a[0].i   =   1;
b[0].a[1].i   =   1;
b[0].a[2].i   =   1;//单步执行,该句为何没报错
b[1].a[0].i   =   1;//此处报错
...


小的刚学C++,还请多多指教


[解决办法]
数组越界有可能都不报错。
这取决于你的数组越界时要写的内存快有没有被别的占用。 如果被占用,对方有写保护的话就报错。
[解决办法]
上一句是数组越界,可能不报错
下一句是使用未初始化的指针,肯定要报错

热点排行