• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 381
  • Last Modified:


VC has a macro: __T() that's suppose to make life easier when switching between unicode/mb builds.
What does it do? I thought it'l map to L on unicode builds, but according to the sources - it just maps to nothing.

What's up?
1 Solution
You are right:

#define __T(x)      L ## x

the above line can be found in 'tchar.h' - the catch it that

#define __T(x)      x

This is controlled by the 'UNICODE' symbol that has to be defined or not, depending on what you want to use. In short:

#ifdef UNICODE
#define __T(x)      L ## x
#define __T(x)      x

('tchar.h' boiled down to '__T()' ;-)

Feel free to ask if you need more information
AssafLavieAuthor Commented:
Hmm yea.
I guess I missed that #if in the source file.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now