读书人

构造函数中new数组失误

发布时间: 2012-07-28 12:25:13 作者: rapoo

构造函数中new数组出错!
cLORHistogram::cLORHistogram():mNbCrystalInRing(260),mNbRing(26),mNbTORinScanner(5931900)

{
mLORHistogram->CoincPrompt = new int[mNbTORinScanner];//mLORHistogram是属于这个类的一个struct
mLORHistogram->CoincRandom = new int[mNbTORinScanner];

}
这是一个构造函数,运行到第一个new时就会出错,提示: 0xC0000005: 写入位置 0xcccccccc 时发生访问冲突

同时会显示下面的结果:



请问这是怎么回事,多谢了!!

[解决办法]
mLORHistogram也是个指针,而且没初始化就想引用里面的“成员”
[解决办法]
楼上说的对头。你先要给mLORHistogram指针整个实际的内存区域来才对的。
[解决办法]
如果只有一个mLORHistogram成员,不如直接写到类里面,这样也省得你new跟delete。况且用了new,肯定还要用try-catch捕获分配异常。搞得更复杂了...

读书人网 >C++

热点推荐