功能输出类型,专用输出还是无效?

时间:2016-11-07 07:20:44

标签: c# wpf

我一直在为我的程序创建方法,我现在正在重构一些代码,我发现我正在改变我最初制作的所有方法:

public static string updateTextBox(string textbox){.... return "";}

public static void updateTextBox(TextBox textbox){...textbox.Text = "";}

我这样做有以下几个优点: 1.)第一种方法我只能返回一个字符串,我发现有时我需要添加更多输出(例如,如果IF语句失败,则更改Foreground的颜色),第二种方法我只需添加第二个参数。

public static void updateTextbox(TextBox textbox1, TextBox textbox 2){...}

2。)我可以使用第二种方法轻松退出代码

 return; 

使用第一种方法我发现的唯一方法是,这会导致错误

return null; 

3.)调用这些方法时看起来更清晰

 textbox.Text = MethodClass.updateTextbox(TextBox textbox)


 MethodClass.updateTextbox(TextBox textbox)

我仍然是编程的菜鸟,重构我的方法以使类型无效有什么问题吗?

1 个答案:

答案 0 :(得分:1)

这一切都取决于您的要求,是否要返回值表单方法。因此,如果要更新类成员,则无需从要在文本框中设置的方法返回值。并且没有必要在方法中传递类成员,这些已经在方法中可访问。

如果它是引用类型变量而不是类成员,则可以作为参数传递并在方法本身内部进行修改。如果你有值类型,那么你可以传递ref或out参数。

所以我再说一遍,这完全取决于你的要求。

您可以在方法中使用返回值作为逻辑用途。就像你有方法检查一个数字是否是回文,所以你只会返回true或false,所以在这种情况下返回类型是有用的。你可以有很多你想要返回的场景,以及你不希望从方法返回值的地方。

如果你有像DoSomething这样的方法,它只是一个简单的方法(如int num = 1*2;),你不关心它的返回值,那么你可以使用void类型。