上问题:
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了