gpt4 book ai didi

c# - 将字符串作为多个参数传递?

转载 作者:行者123 更新时间:2023-11-30 19:31:58 25 4
gpt4 key购买 nike

大家好,我是 C# 的新手,我想知道是否有一种简单的方法可以将字符串作为多个参数传递。这是一个例子:

我想传递给一个接受这些参数的函数:

DoStuff(int a, string b, string c, string d)

我有一个字符串,比如“string e”,其中包含以下内容:1,a,b,c

所以我想像这样调用函数,DoStuff(e)。但是当然这会导致错误,因为它需要更多参数。有没有一种简单的方法可以将我的参数字符串传递给函数?

编辑:感谢所有关于函数重载的建议。这个函数是一个类构造函数,它可以有重载吗?这是代码

arrayvariable[count] = new DoStuff(e);

最佳答案

您需要重载采用单个字符串的方法。然后它可以拆分字符串并创建适当的参数。

例如:

void DoStuff(int a, string b, string c, string d)
{
// Do your stuff...
}

void DoStuff(string parameters)
{
var split = parameters.Split(',');
if (split.Length != 4)
throw new ArgumentException("Wrong number of parameters in input string");

int a;
if (!int.TryParse(split[0], out a)
throw new ArgumentException("First parameter in input string is not an integer");

// Call the original
this.DoStuff(a, split[1], split[2], split[3]);
}

诚然,如果这是您经常做的事情,可以将其重构为一种方法,使字符串解析更通用且可重用。

关于c# - 将字符串作为多个参数传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6117398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com