Использование C ++ с MFC.Исходя из C # фона, я обычно просто использую строку для всех, ну, для строк.Я использую их для членов класса, параметров метода и возвращаемых значений метода.
Теперь в C ++ у меня есть std :: string, CString, char *, LPCTSTR и другие.Когда я проектирую свои члены данных, параметры метода и возвращаемые значения метода, какой тип (типы) я должен использовать?Простота использования важна, и CString, кажется, предлагает это, но мой инстинкт направлен на портативные стандарты, хотя переносимость довольно низкая в моем списке приоритетов (сейчас).Кроме того, мне не нравится семантика c создания строковых буферов и передачи их в методы и функции.
Я думаю, что с точки зрения простоты кодирования CStrings, вероятно, имеют преимущество.Но в целом, что такое «высокое качество кода», способ сделать это?
РЕДАКТИРОВАТЬ:
Меня особенно беспокоит точки интерфейса в моем коде (т.е. параметры метода и возвращаемые значения).Например:
Shape::SetCaption(const char *caption) {...}
Shape::SetCaption(CString caption) {...}
Shape::SetCaption(std::string caption) {...}
Shape::SetCaption(std::wstring caption) {...}