2011-10-19 14 views
0

私はこの質問が以前に尋ねられたと確信していますが、検索されたテキストを取得できません。誰かがそれらを説明することができれば、記事に私を参照してください、私にそれを感謝する正しい検索クエリを私に与えてください。_T( "...")マクロと_RT( "...")マクロの違いは何ですか?

ありがとうございました。

+0

アンダースコアと大文字で始まる識別子が実装のために予約されているとすれば、私はその使用を控え、コンパイラのマニュアルは説明を探す場所だと思います。 – pmr

+0

@pmr: '_T(')は_the_標準ですUNICODE/DBCSコンパイラに応じてワイド/ショートchar文字列リテラルを取得する方法 – sehe

+2

この "_RT"マクロはどこで見つかりましたか?私はそれを見たことがない。それはWinRTなのでしょうか? –

答えて

1

これは文字列リテラルのWikipedia C++11 Pageを見て、 マクロについて知っていると、_RTマクロは_Tの生の文字列リテラルを作成することになる可能性があります。

マクロ自体を見て、その動作を確認する必要があります。ユニコードを使用している場合、_Tマクロは項目にLを追加するので、_RTは常にRの前にあり、ユニコードの場合はLとなります。だから、_T

は、通常の文字列リテラルを扱うと、それらにユニコード(wchar_t)かどうかを作るために使用され、そして_RTは、生の文字列リテラルを作り、それらがUnicodeか作るために使用されます。

+0

これは、 IMO – sehe

0

私は

私の最初の考えは文字通りの "読み取り専用" でしょう(それはgoogle agreesらしい)_RT()を知りません。実際には少し冗長ですが、IIRCの標準はC++の文字列リテラルのconstantnessに関して厳しくなっています

関連する問題