【发布时间】:2016-08-01 16:46:07
【问题描述】:
我是 C# 的新手,想知道是否可以根据分配给它的变量调用函数?我知道我可以重载函数并将变量作为参数传递,但我只是想知道这是否可能。
例如,将数据行中的值转换为分配给它的数据类型。
private int myint;
private string mystr;
private DateTime mydate;
myint = assign(datarow, "number");
// calls this
private int assign (DataRow r, string columnname)
{
return Convert.ToInt32(r[columnname]);
}
mystring = assign(datarow, "name");
// calls this
private string assign (DataRow r, string columnname)
{
return Convert.ToString(r[columnname]);
}
【问题讨论】:
-
该代码无效,当函数返回类型为
void时,您无法返回值。 -
如果您使用
out参数而不是返回类型,这是可能的。 -
除了@rene 的回答,你会发现最接近你正在寻找的是泛型:msdn.microsoft.com/en-us/library/512aeb7t.aspx 虽然正如 rene 指出的那样)是不可能的。
-
抱歉,已更正代码。可能是重复的,谢谢。但是,作为新手,我发现它们有点难以理解。但我会进一步查看发布的链接。
-
您可以创建通用函数并处理这种情况。示例链接:msdn.microsoft.com/en-us/library/ms379564(v=vs.80).aspx
标签: c#