title: Standard macro to promote string literal to wchar_t in VC++
body: <p>Is there a standard macro to convert a char string literal that is substituted with a preprocessor macro to a wchar_t string using Visual Studio 2005? </p>
  
  <p>e.g. this works:</p>
  
  <pre><code>wchar_t* test = L"Hello World";
  </code></pre>
  
  <p>but this doesn't:</p>
  
  <pre><code>#define HELLOWORLD "Hello World"
  wchar_t* test = L(HELLOWORLD);
  </code></pre>
  
  <p>I am sharing a header file containing many internationalised strings with several different projects on different platforms, so I don't want to alter the header itself, nor add _T() since this is platform dependent. So I want the unicode conversion to be in my source, not in the header. I know I can write my own substitution macro as shown <a href="https://stackoverflow.com/questions/1690082/combining-wide-string-literal-with-string-macro">here</a>, but am wondering if there is a standard method in VS?</p>
  
  <p>This would seem a very common scenario for anyone writing internationalised code, but I can't seem to find a predefined macro delivered with VS2005.</p>