Je cette méthode qui reçoit un chemin à travers une variable TCHAR szFileName[]
, qui contient quelque chose comme C:\app\...\Failed\
C++ TCHAR [] à chaîne
Je voudrais trier ce que je peux vérifier si le nom du dernier dossier sur ce chemin est en fait, « Échec »
Je pensais que l'utilisation de quelque chose comme ça fonctionnerait:
std::wstring Path = szFileName;
string dirpath2;
dirpath2 = Path.substr(0,5);
Mais je reçois l'erreur suivante:
Error 6 error C2679: binary '=' : no operator found which takes a right-hand operand of type 'std::basic_string<_Elem,_Traits,_Ax>' (or there is no acceptable conversion)
Inutile de dire que je suis très nouveau pour C++, et je cherchais une réponse pendant un certain temps maintenant, mais je ne l'ai pas eu de chance, de sorte que toute aide serait appréciée :)
Je suis désolé mais je ne comprends pas très bien ce qui se passe là-bas. suis-je censé faire quelque chose comme: \t std :: tstring Path = szFileName; Parce que si oui, alors j'obtiens l'erreur suivante: 'tstring': n'est pas un membre de 'std' – hikizume
Vous définissez 'tstring' vous-même, et ce n'est pas dans l'espace de noms' std' donc quand vous utilisez-le, ne le préfixez pas avec 'std ::'. –
il semble fonctionner mais pourquoi ai-je une erreur "initialisation": impossible de convertir 'std :: basic_string <_Elem, _Traits, _Ax>' en 'std :: basic_string <_Elem, _Traits, _Ax>' "quand j'essaye utiliser substr pour stocker une partie de la chaîne initiale sur une autre chaîne? – hikizume