
約40日余りのVB.NET 初学者です。
そこで、この間の学習で疑問に思った諸点について質問します。
疑問: Imports 文についての疑問!
Imports System.Windows.Forms
' ==================================================
' グラフィックス・メソッドで "hello, world" と描画
' ==================================================
Public Class frmMain
Private Sub frmMain_Paint(ByVal sender As Object, ByVal e As PaintEventArgs) Handles Me.Paint
Dim msg As String = "hello, world"
Dim aFont As New Font("Arial", 12)
e.Graphics.DrawString(msg, aFont, Brushes.Black, 0, 0)
End Sub
End Class
Imports 文でインポートした場合の EXE は 16384 バイト。
e As System.Windows.Forms.PaintEventArgs と書いても EXE は 16384 バイト。
「ならば、Imports 文を書けばいいじゃないか?」と思います。
この辺りの事情が判りません。
私の推測は、次のようです。
・インポート文は名前空間やクラスに置換されるとは限らない。
・置換は全体のテキストをチェックした後に必要な限りで行われる。
しかし、真相は不明。
自分なりのスタイルとか作法とかを確立する上で多少喉に刺が刺さった感があります。
この疑問の解消に手を貸して頂ければ幸いです。
No.1ベストアンサー
- 回答日時:
クラスを指定するときに、いちいち完全修飾名で記述するのは煩雑だと感じるならImportsステートメントを利用すればいいと思いますし、
どの名前空間に属するクラスなのかを明示することに重きを置くなら完全修飾名を利用すればいいのではないでしょうか。
Importsステートメント自体は、完全修飾名を省略できるようにしたり、名前空間に別名をつけたりする機能に過ぎないので、あとは好みの問題だと思います。
exeのサイズに関しては、完全修飾名で記述しようがインポートして直接クラス名を記述しようが、ビルドしてしまえばまったく同じ実行ファイルができそうな気がします。これは推測ですが。
>Importsステートメント自体は、完全修飾名を省略できるようにしたり、名前空間に別名をつけたりする機能に過ぎないので、あとは好みの問題だと思います。
ここんところが今一つ納得いきません。
事実上、そのようになっているとは思いますが・・・。
コンパイルの前処理との関係で、どうにも今一つスッキリしません。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
配列の重複する値とその個数を...
-
どこからも呼ばれていない無意...
-
dllと同じプロジェクトにする方法
-
同一パッケージにあるクラスが...
-
ページ遷移時にアコーディオン...
-
java eclipse 型に解決できません
-
正規表現を使った小数入力チェ...
-
クラスのプロパティに構造体を...
-
内部クラス?のエラー
-
Eclipseでのクラス作成について
-
string formatについて
-
packageとimport の違いって?
-
共通で使う関数を集めたクラス...
-
eclipse でクラスに色
-
eclipeでクラス作成ができない
-
重複エラーを解決するには
-
同じクラスにならない確率を教...
-
tomcat上でのpropertiesファイ...
-
同じパッケージ、クラス名が含...
-
女王の教室に、AKBの村山ゆいり...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
僕の出身中学校は200人同級生が...
-
今日は こどもの日 で、良い天...
-
どこからも呼ばれていない無意...
-
そんなにお金がなくても年に1度...
-
中学生です。 私は教室の黒板に...
-
恋愛
-
EclipseでJSPのコンパイルエラー
-
java eclipse 型に解決できません
-
共通で使う関数を集めたクラス...
-
main()を持つクラスが2つ以上...
-
同一パッケージにあるクラスが...
-
配列の重複する値とその個数を...
-
「隣の芝生は青く見える」現象...
-
重複エラーを解決するには
-
UMLのクラス図はmain()も含むん...
-
複数のクラスで共通した関数を...
-
VBAもしくはVB6:クラスの中で...
-
命名規約は連番でいいのか?
-
eclipse でクラスに色
-
3年間同じクラスになる確率
おすすめ情報