读书人

为何每次new 之后, *n的值都是一样的呢

发布时间: 2012-06-08 12:55:24 作者: rapoo

为何每次new 之后, *n的值都是一样的呢?

C/C++ code
    while ( size != aggregateSize_ )     {       ....        if (!*n)         {            *n = new Branch;        }        ...    }


为何每次new Branch之后, *n的值都是一样的呢?

感觉每次new ,应该赋一个新的, 不同的地址给*n啊?



[解决办法]
你是不是把你new的这个删除掉后继续new的呢?那么你的堆空间里面没有其他分配内存的操作的话比然分配的就是这个咯
[解决办法]
C/C++ code
    int *n;    while(1){        n = new(int);    }
[解决办法]
你确认中间else if内的语句调到了吗?

读书人网 >C++

热点推荐