簡體   English   中英

如何在方法中限制參數?

[英]How to Limit a Parameter in a Method?

我有一個方法想要傳遞一個選項給我,但是作為一個開關。 我很難解釋,因此將包括以下課程:

class Special
{
int Var1;
int Var2;

public void Add1(int option, int variable)
{
    int ToReturn;        
    ToReturn = variable + 1;

    switch(option)
    {
        case 1:
            Var1 = ToReturn;
            break;
        case 2:
            Var2 = ToReturn;
            break;
    }
}
}

有什么辦法可以將option的值限制為1或2? 我可以向Add1添加任何信息,以便在調用它時通知程序員它可能是什么值以及每個選項的作用嗎?

我已經給出了一個示例類,但是我的類包含更多可能適用於此的變量。

是:

public enum Option
{
    Option1,
    Option2
}

public void Add1(Option option, int variable)
{
    int ToReturn;        
    ToReturn = variable + 1;

    switch(option)
    {
        case Option1:
            Var1 = ToReturn;
            break;
        case Option2:
            Var2 = ToReturn;
            break;
    }
}

看起來您想使用枚舉,基本上是靜態定義值的占位符。

我可以想到多種方法來處理您要問的問題,但是如果我處於您的情況下(假設我已正確理解您的問題),我將使用枚舉...

enum Options {
    Option1 = 1,
    Option2 = 2
}

class Special
{
int Var1;
int Var2;

public void Add1(Options option, int variable)
{
    int ToReturn;        
    ToReturn = variable + 1;

    switch(option)
    {
        case Options.Option1:
            Var1 = ToReturn;
            break;
        case Options.Option2:
            Var2 = ToReturn;
            break;
    }
}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM