为什么我收到这条线的错误?
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,除非您使用指针,否则您不能定义一个变量而不在 C++ 中为其分配一些基本值。
您的代码应该如下所示:
if(!newName.empty())
....