我想在類A構造函數中添加選項以從文件加載對象。但我不知道當加載失敗時文件加載失敗(文件加載失敗,文件格式不正確)。代碼使用A loadObjects是否爲真導致分段錯誤。也許在構造函數中加載不是最好的方法...從類構造函數中的文件加載失敗
template <typename T>
class A
{
public:
A(const std::vector<Obj<T>*>& o) : objs(o) {}
A(const std::string& file)
{
// loadObject adds new objects in objs
// objs.push_back(new Obj<T>);
if (loadObjects(file, objs))
{
// good, can use object A
}
else
{
// Segmentation fault when using undefined A,
// What can I do to stop execution here.
}
}
virtual ~A()
{
for (size_t i=0; i<objs.size(); ++i)
delete objs[i];
objs.clear();
}
private:
std::vector<Obj<T>*> objs;
};
也許只是輸出錯誤信息並退出? –