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

投稿日: 2002/12/02(Mon) 06:56
投稿者あずま
Eメール
URL
タイトル文字列を変数名として扱う事は出来ますか?

はじめまして。
VBで質問なのですが、プライベートな構造体で

Private Type STX
    ST_NUM As String
    ST_NAME As String
    ST_TEL  As String
end type

private ST_A as STX

の様に定義したものに対し、グローバルな関数、例えば
public function GetST("ST_NUM") の様に引数へ変数名を入れて、
何らかの形で各構造体のメンバ変数にアクセス(値の取得など)
したいのですが、このような事は可能でしょう?
私の場合、関数内で select case を使い、全てのパターンに対し

public function GetST(Para as string) as xxx
    DIM Ret
    select case Para
        case "ST_NUM":Ret=ST_A.ST_NUM
        case "ST_NAME":Ret=ST_A.ST_NAME
        case "ST_TEL":Ret=ST_A.ST_TEL
          :

のようにチェックしてるのですが、同じような処理を他の関数でも
使っているため、メンバが増えると2重3重の手間になってしまいます。

public function GetST(Para as string) as xxx
    DIM Ret
    Ret = XXX("ST_A." & Para)

のように変数名を文字列で指定し、実際の変数へアクセス出来る関数が
あれば、ソースコードも見やすく便利で良いのですが…
どなたか良い方法をご存知の方いらっしゃいましたら教えて頂けませんでしょうか?
よろしくお願い致します。


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

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

- Web Forum -