У меня есть некоторый код C ++, где мне нужно использовать CString с sprintf. В этом коде я создаю имена файлов, которые являются CStrings, которые определены sprintf. Код ниже.
double Number;
Number = 0.25;
char buffer [50];
CString sFile;
sFile = sprintf(buffer,"TRJFPICD(%3.3f).txt",Number);
CString SFFile;
SFFile = sprintf(buffer,"TRJFPICV(%3.3f).txt",Number);
CString SFFFile;
SFFFile = sprintf(buffer,"TRJFPICA(%3.3f).txt",Number);
Желаемые имена файлов TRJFPICD(0.25).txt, TRJFPICV(0.25).txt
, а также TRJFPICA(0.25).txt
, Я должен использовать CStrings для моего кода.
Я получаю ошибку:operator =
‘неоднозначно.
Взгляни на CString::Format
(игнорировать CStringT
часть — CString
происходит от CStringT
). Он делает то, что вы хотите, и позволяет вам чисто переписать код:
double Number = 0.25;
CString sFile;
sFile.Format(_T("TRJFPICD(%3.3f).txt"), Number);
CString SFFile;
SFFile.Format(_T("TRJFPICV(%3.3f).txt"),Number);
CString SFFFile;
SFFFile.Format(_T("TRJFPICA(%3.3f).txt"),Number);
Других решений пока нет …