我有此变量dirpath2,在其中存储路径的最深目录名称:
typedef std::basic_string<TCHAR> tstring;
tstring dirPath = destPath;
tstring dirpath2 = dirPath.substr(destPathLenght - 7,destPathLenght - 1);
我希望能够将它与另一个字符串进行比较,例如:
if ( _tcscmp(dirpath2,failed) == 0 )
{
...
}
我已经尝试了很多东西,但似乎没有任何效果。谁能告诉我该怎么做或我在做什么错?
请记住,我几乎对C++一无所知,这让我发疯。
预先感谢
最佳答案
std::basic_string<T>
的operator==
重载,请尝试以下操作:
if (dirpath2 == failed)
{
...
}
或者,您可以这样做。由于
std::basic_string<T>
没有对const T*
的隐式转换运算符,因此您需要使用c_str
成员函数将其转换为const T*
:if ( _tcscmp(dirpath2.c_str(), failed.c_str()) == 0 )
{
...
}