VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 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)の手法でやってきたのですが、
明確な使用方法の切り分けや、メリットはグレーなままでした。

ぜひ教えていただければ幸いです。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -