информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеАтака на InternetГде водятся OGRы
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
[C++] Допустимо 24.03.05 12:49  Число просмотров: 1878
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> typedef std::basic_string <TCHAR> _tstring;

TCHAR вводится как typedef и становится полным синонимом одного из типов (и при спецификации шаблонов тоже). Так что такой вариант вполне подходит

> 2) Или надо анализировать определения _UNICODE, как это
> делается, например, в <tchar.h>, типа :
>
> #ifdef _UNICODE
> typedef wstring _tstring;
> #else
> #ifdef _MBSC
> typedef string _tstring;
> #endif
> #endif

Можно и так, хотя можно упустить какие нибудь другие определения (типа SBCS и пр.)

> Возможно, что есть разница в п.1 и п.2
> Спасибо.
Если во втором варианте ничего не пропущено, то фактически оба определения _tstring-а идентичны
<programming>
[c++] stl + unicode + xxx_string 23.03.05 23:39  
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
Сейчас в проекте не используестя UNICODE.
Как будет дальше - точно не знаю. Скорее всего будет.

1) Допустимо ли обойтись использованием basic_string и простейших определений, типа:

#include <vector>
#include <string>
#include <tchar.h>

//-----------------------------------------------------------------------------

typedef std::basic_string <TCHAR> _tstring;

====================================================

2) Или надо анализировать определения _UNICODE, как это делается, например, в <tchar.h>, типа :

#ifdef _UNICODE
typedef wstring _tstring;
#else
#ifdef _MBSC
typedef string _tstring;
#endif
#endif

Возможно, что есть разница в п.1 и п.2
Спасибо.
[C++] Допустимо 24.03.05 12:49  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> typedef std::basic_string <TCHAR> _tstring;

TCHAR вводится как typedef и становится полным синонимом одного из типов (и при спецификации шаблонов тоже). Так что такой вариант вполне подходит

> 2) Или надо анализировать определения _UNICODE, как это
> делается, например, в <tchar.h>, типа :
>
> #ifdef _UNICODE
> typedef wstring _tstring;
> #else
> #ifdef _MBSC
> typedef string _tstring;
> #endif
> #endif

Можно и так, хотя можно упустить какие нибудь другие определения (типа SBCS и пр.)

> Возможно, что есть разница в п.1 и п.2
> Спасибо.
Если во втором варианте ничего не пропущено, то фактически оба определения _tstring-а идентичны
[C++] Допустимо. 24.03.05 17:28  
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
> TCHAR вводится как typedef и становится полным синонимом
> одного из типов (и при спецификации шаблонов тоже). Так что
> такой вариант вполне подходит

Спасибо.

> Можно и так, хотя можно упустить какие нибудь другие
> определения (типа SBCS и пр.)

Конечно, здесь не полное определение.
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach