Как создать CString из массива символов? - PullRequest
1 голос
/ 14 января 2010

Необходимо регистрировать содержимое buf с помощью LogMethod (), ниже проблема в том, что LogMethos принимает только «Const CString &»

char buf[1024];
strcpy(buf, cErrorMsg);

// need to pass to LogMethod "buf" how do i do that?
log.LogMethod(const CString &); 

Thans Rev

Перевернуто

Ответы [ 3 ]

1 голос
/ 14 января 2010

Если вы говорите о MFC CString, насколько я могу судить, у него должен быть неявный конструктор, принимающий TCHAR const *. Другими словами, должно работать следующее.

log.LogMethod(buf); 

Если это не так, пожалуйста, опубликуйте сообщение об ошибке.

1 голос
/ 14 января 2010
log.LogMethod(CString(buf));

Это позволит избежать проблемы, когда компилятор не будет автоматически создавать объект CString с использованием соответствующего конструктора, поскольку аргумент является ссылкой (это было бы, если бы аргумент был «простой» CString).

0 голосов
/ 14 января 2010
CString cs;
cs = buf;

log.LogMethod(cs)
...