2011-12-10 17 views

答えて

6

USHORTは公式のC++言語の一部ではないマクロです(おそらくどこかで定義されているかtypedefされています)。 unsigned shortは、少なくとも0〜65535の数値を保持できる整数としてC++言語で定義された公式型です。

符号なしshortを使用し、コードは移植可能です。会社のコーディング標準で必要とされない限りUSHORTは使用しないでくださいそれ。

+3

「typedef」はマクロではありません。 –

+0

最初のコードブロックにhttp://www.cplusplus.com/forum/lounge/17053/のサンプルコードがあります。あなたは見て、彼らがそれを使う理由を理解できるかどうかを見てみることができますか? –

+4

@stas:これは単なるマイクロソフトの考えです。これは、 'void foo(void)'を書くことのC'ismとほぼ同じです.C++では、引数リストの2番目の 'void'にポイントがありません。あるいは、 'get get()'を書くJavaの主張は、C++では 'get'は目的を持たず視覚的なノイズに過ぎません。 Cheers、 –

1

unsigned shortは標準C++の表現であり、USHORTではありません。正確な定義は、ウィキペディアの記事Integer (computer science)にあります。

場合によっては、ヘッダーにunsigned short USHORTをtypedefします。 USHORTはunsigned shortと同様に使用できます。

関連する問題