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

一个关于内存的异常: ( 求解

2012-02-13 
一个关于内存的错误: (求解!编译M.exe没有问题但是双击M.exe后出现如下错误:Theinstructionat0x6001bed

一个关于内存的错误: ( 求解!
编译M.exe没有问题

但是双击M.exe后出现如下错误:

The   instruction   at   "0x6001bed "   referenced   memory   at   "0x00000000 ".   The   memory   could   not   be   "written ".

然后click   ok   to   terminate,   click   cancel   to   debug

程序无法正常运行,请问是什么原因呢?

以下是代码:(改代码之前还是好的,改过之后就不行了)
#define   TEST_ENDING()                                                                                               \
        }                                                                                                                                                     \
                                                                                                                                                              \
        static   CPPUNIT_NS::TestSuite   *suite()                                                                             \
        {                                                                                                                                                     \
            const   CPPUNIT_NS::TestNamer   &namer   =   getTestNamer__();                                       \
            std::auto_ptr <CPPUNIT_NS::TestSuite>   suite(                                                             \
                          new   CPPUNIT_NS::TestSuite(   namer.getFixtureName()   ));                           \


            return   suite.release();                                                                                                     \
        }                                                                                                                                                     \
            CPPUNIT_NS::Test   *   pSuite=new   CPPUNIT_NS::Test;   \     //   这两行是后来加上去的
            pSuite-> suitePrint=suite_printTests;                                             \     //   这两行是后来加上去的

//   原始目的就是想新建一个Test类的指针,使得在Test类中定义的函数指针suitePrint指向
suite_printTests这个函数(此函数另外有定义)

请问基于我的原始目的,怎么解决这个问题?

[解决办法]
程序员对错误原因的猜测,基本准确性都很差。
我不太相信你猜对了。
if (pSuite)
{
pSuite-> suitePrint=suite_printTests;
}
就知道你猜对没有了。
还是老老实实上调试器吧。
[解决办法]
指针用时要注意:
1.new/malloc 是否成功
2.使用时是否为空
3.free/delete后置NULL
4.是否会越界
5.字符串Null-Terminated
等等

热点排行