この行でエラーが発生するのはなぜですか?
void Student::SetName(const string newName)
{
if(newName!=NULL) //could not deduce template argument for 'const T1 *' from 'int'
{
.....
}
何か案は?
この行でエラーが発生するのはなぜですか?
void Student::SetName(const string newName)
{
if(newName!=NULL) //could not deduce template argument for 'const T1 *' from 'int'
{
.....
}
何か案は?
可能な解決策 :
if(!newName.empty())
if(newName.size()) // If size = 0 so no caracters in string
if(newName == "") // Empty string
これはC#ではありません。C++の文字列はnull許容型ではありません。実際にNULLになることができるのはポインターのみです。ポインターを使用している場合を除いて、C++で基本的な値を割り当てずに変数を定義することはできません。
コードはおそらく次のようになります。
if(!newName.empty())
....