我是墨西哥的新手。构建 C++ Mex 文件后,我在运行时立即收到此错误。
>> [a b c] = read_svm('/All/testhalf_Anger_1.libsvm');
Unexpected Standard exception from MEX file.
What() is:basic_string::_S_construct NULL not valid
..
这就是我的代码执行的样子
先感谢您!
错误消息很好地解释了它,在您的代码中的某处,您basic_string
通过将 NULL 指针传递给它的构造函数来构造 a 。采用 a的basic_string
构造函数CharT *
要求指针为非 NULL,因此会崩溃。
请注意,std::string
andstd::wstring
是std::basic_string
类模板的类型定义,因此您可能在代码中使用其中之一。
您可以通过执行类似于以下代码段的操作来解决此问题
char const *p = nullptr;
// std::string s(p); // This is not allowed!
std::string s( p ? p : "" ); // string will be empty if p is NULL