#define Glib :: string std: wstring - PullRequest
       7

#define Glib :: string std: wstring

0 голосов
/ 28 октября 2011

У меня есть код Linux, и я хочу перенести его на Windows.Код использует Glib::ustring, но я хочу заменить все строки на std::wstring в целях тестирования.

Есть ли способ определить все Glib::string до std::wstring без изменения его в коде?Что-то похожее на typedef или #define?

1 Ответ

2 голосов
/ 28 октября 2011

Что заставляет вас думать, что Glib::ustring является взаимозаменяемым / совместимым с std::wstring? Скорее всего, если вы сделаете эту замену, вы просто получите кучу ошибок компилятора, или если вам не повезет, он скомпилируется и будет работать с другой семантикой.

Я думаю, вам придется прикусить пулю и преобразовать свой код Linux, чтобы сначала использовать wstring, а затем порт Windows должен быть намного менее сложным.

Тем не менее, предполагая, что вам не нужна Glib в версии для Windows, вы можете удалить все ссылки на нее, а затем создать свой собственный поддельный тип в заголовке:

namespace Glib
{
    typedef std::wstring ustring;
}
...