そのように割り当てた後、クラスメンバーの値を取得するのに問題があります:
bool ModeData::setPasswd(char* _pass)
{
return (this->setString(this->passwd_, _pass) ? true : false);
}
bool ModeData::setOutput(char* _out)
{
return (this->setString(this->output_, _out) ? true : false);
}
setString は次のようなものです。
bool ModeData::setString(char* _toStr, char* _fromStr)
{
// check if already exists and delete
this->delIfPresent(_toStr);
// allocate space for the new string
_toStr = new char[strlen(_fromStr) + 1];
// copy new string
if(strcpy(_toStr, _fromStr))
{
return true;
}
// if something gone wrong return 'false'
return false;
}
そして、this->passwd_ の値を出力したい場合、何も得られません。メソッドを通過するときにどこかでポインタが失われていると思いますが、よくわかりません。