私はいくつかのコードで少し立ち往生しています。getToto()
通常は a を返すメソッドの戻り値の型を使用する必要がありますstd::string
が、ある場合は戻りますfalse
(使用する必要があるライブラリの一部であり、変更できません)。それがヌルポインタに相当することは理解しています。しかし、私はそれを捕まえる適切な方法を見つけることができません!
テスト.cpp
static std::string getToto(){
char buffer[1024];
if ( CTX_Get_Env(buffer, "Toto", 1024) )
return false;
return buffer;
}
私が試したら
const char* returned = Test::getToto().c_str();
if (returned==NULL){
std::cout<< "null pointer"<<std::endl;
}
実行中にエラーが発生する
「std::logic_error」のインスタンスをスローした後に呼び出される終了
what(): basic_string::_S_construct NULL が無効です
申し訳ありませんが、私は C++ のレベルがかなり低いです。