C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 省略可能な引数の宣言はできますか?


(過去ログ 57 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■32340 / inTopicNo.1)  省略可能な引数の宣言はできますか?
  
□投稿者/ tamaboyo (46回)-(2009/02/05(Thu) 11:34:06)

分類:[C#] 

tamaboyoです。

ただいま、VB6で作成しているユーザーコントロールをC#に移行中です。
元々、VB6で
Public Sub ControlLoad(ByVal nItem As String, ByVal nBitMax As Long, ByVal nBitValue As String, Optional nDec = 16, Optional nPin = 0)
と宣言されている関数があります。
この宣言で、nDecとnPinの2つの変数は引数省略可能で宣言されています。
これをC#で宣言する場合、省略可能な宣言はどうやってするのでしょうか?


public void ControlLoad(string nItem, int nBitMax, string nBitValue, int nDec, int nPin );
とするとエラーはでませんが、これだと省略ができません。
何か宣言方法があるのでしょうか?
また、省略した際に自動で値を設定することはできるのでしょうか?

それとも、同じ名前の引数個数違いの関数を作って、省略値を渡してやる方法しかないのでしょうか?

環境はVS2005です。
宜しくお願いします。
引用返信 編集キー/
■32343 / inTopicNo.2)  Re[1]: 省略可能な引数の宣言はできますか?
□投稿者/ 囚人 (316回)-(2009/02/05(Thu) 11:42:46)
省略する方法はないので、オーバーロードを書いて、一方から一方を呼び出すのが一番近いかと思います。
引用返信 編集キー/
■32346 / inTopicNo.3)  Re[2]: 省略可能な引数の宣言はできますか?
□投稿者/ tamaboyo (47回)-(2009/02/05(Thu) 11:55:39)
囚人 さん、ありがとうございます。

> 省略する方法はないので、オーバーロードを書いて、一方から一方を呼び出すのが一番近いかと思いま
す。

なるほど、そうでしたか。
では、省略分がない同名関数を作成して、そこから引数を追加して呼ぶことにします。

ありがとうございました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -