cocos2d-x Expression: invalid null pointer Expression: invalid null pointer 问题

上问题:

Debug Assertion Failed!

Program: C:\Windows\system32\MSVCP110D.dll
File: c:\program files (x86)\microsoft visual studio 11.0\vc\include\xstring
Line: 1143

Expression: invalid null pointer

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.


代码:

string GameScene::getFileByName(string pFileName){

    std::string fullPath = FileUtils::getInstance()->fullPathForFilename(pFileName.c_str());
    unsigned char* pBuffer = NULL;
    long bufferSize = 0;
    pBuffer = FileUtils::getInstance()->getFileData(fullPath.c_str(), "r", &bufferSize);
    log("%ld",bufferSize);
    //log("%s",pBuffer);
    for (int i = 0; i < bufferSize; ++i)
    {
        log("%c",pBuffer[i]);
    }
    if (pBuffer)
    {
        delete [] pBuffer;
        pBuffer = NULL;
    }
    return NULL;
}

前几天刚接触C++和cocos2d-x所以很多基础问题,这个问题是因为返回的NULL,我把他当成java 的写法了,

在c++里,NULL和0是通用的。(NULL本身是一个宏:#define NULL 0)
所以,是返回的地方写错了

改成return "";就OK了

你可能感兴趣的:(cocos2d-x)