投稿日 | : 2006/03/09(Thu) 04:15 |
投稿者 | : deadjail |
URL | : |
タイトル | : 標準モジュールで構造体(Type)をPrivateで記述するメリットは? |
はじめまして。
deadjailといいます。
困った時などよく拝見させて頂いてます。
質問させてください。
標準モジュールで宣言する構造体(Type)をPrivateで宣言することに
特別なメリットはあるのでしょうか?
例えば下の二つのコードを比べてみます。
1)
Private Type typeA
Dim intA As Integer
Dim strB As String
End Type
Public gTypeA As typeA
2)
Public Type typeA
Dim intA As Integer
Dim strB As String
End Type
Public gTypeA As typeA
2)の場合は他のプロシージャなどで一時的にgTypeAの値を
退避させたい時など、ローカルで宣言した同じ構造体の変数
に値を"="で一括代入したりできますが、もちろん1)では出来ません。
そうすると1)のメリットは他人が作ったモジュールをリンクした時
などに構造体名のバッティングが避けられるといったことくらいしか
私には浮かばないのですが、もっと根本的な仕組みでのメリットなど
あるのでしょうか?
結局名称のバッティングだけの話であれば、gTypeAというグローバルの
変数も同じ問題を抱えていると思いますので、大したメリットでは
ないように思えます。
実は私はずっと1)の手法でやってきたのですが、
明確な使用方法の切り分けや、メリットはグレーなままでした。
ぜひ教えていただければ幸いです。