掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
? (ID:124897)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
引用箇所は「<<」を使って表現するのではなく、文頭に「>」を含める形に していただけると、(この掲示板の場合は)引用箇所がわかりやすいです。 > どちらが正しいのでしょうか???? VB.NETのヘルプで、「プリミティブ型」の解説を見ていただくと わかりますが、VB.NETでは、Integer というデータ型は、 System.Int32 構造体の『別名』に過ぎません。 私が、Integerではなく、Int32を使ったのは、それが「32bit整数型」で ある事がわかりやすいから、というだけであって、実際の動作としては どちらを使っていただいても、問題ありませんよ。 たとえば、 Const APPCMD_CLIENTONLY As Int32 = 16% Const APPCMD_CLIENTONLY As Integer = &H10 Const APPCMD_CLIENTONLY As System.Int32 = &H10I は、いずれも全く同じ内容を意味しています。 ----- 以下補足 ----- 厳密にいうと、どちらも正しい宣言とは言えなかったりもします。 APPCMD_CLIENTONLY は本来、C/C++でいう所の DWORDという型なのですが、 これは『32-bit unsigned integer(32ビット符号無し整数型)』という型です。 一方、VB.NETのInteger型は、「32ビット符号付き整数型」と呼ばれる物であり、 厳密に言えば異なるデータ型といえます。 本来であれば、「32-bit unsigned integer」型の宣言である、 「As System.UInt32」を使いたいところなのですが、現在のVB.NETでは UInt32型の「定数」を宣言する事ができません。(Visual Basic 2005であれば可能) とはいえ、API側から見た場合は、型が UInt32 であれ Int32 であれ、 渡されるデータ自体は同じものであり、結果には影響しませんので、 便宜上、現在の VB.NET では、Integer型(System.Int32型)で宣言するのが 一般的となっています。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.