Re: типы WCHAR, CHAR, LPSTR, LPCZSTR,
От: alzt  
Дата: 13.10.09 09:03
Оценка:
Здравствуйте, Аноним, Вы писали:

Поясню на примере/ Есть функция установления имени чего-то.
void Something::setName(const char* newName);//лучше string, но сути не меняет;


В один прекрассный момент решают, что char-а будет недостаточно для всех возможных имён. В начальный момент это могли быть только символы латинского алфавита, потом добавили подчёркивания, цифры, некоторые знаки. А теперь надо добавить ещё и поддержку парочки китайских иероглифов. Т.е. нужна функция

void Something::setName(const wchar_t* newName);


И везде придётся в лучшем случае менять char на wchar (ещё придётся проверять, что никакой код не считает, что newName состоит из char-ов, например использование 1 вместо sizeof).
Если сразу использовать TCHAR, то изменение далосьбы намного легче.

А часто сразу известно, что код должен компилироваться под разные требования — с использованием юникода и без.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.