首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无效参数"out“参数

无效参数"out“参数
EN

Stack Overflow用户
提问于 2017-03-20 07:56:30
回答 3查看 399关注 0票数 0

我有一个方法,我想使用out参数。但我错过了一些我找不到的东西。我有3个参数,第一个是长id,我正在发送这个ID,我正在处理它,我正在创建我的workerName (第二个参数)和workerTitle (第三个参数)。我的方法是;

代码语言:javascript
复制
public static void GetWorkerInfo( long workerID, out string workerName, out string workerTitle)
{
   // Some code here
}

在那里我呼唤我的方法;

代码语言:javascript
复制
GetWorkerInfo(workerID, out workerName, out workerTitle)
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-03-20 08:02:55

使用C# 7,您可以将输出参数声明为方法调用的一部分,如下所示:

代码语言:javascript
复制
GetWorkerInfo(workerID, out var workerName, out var workerTitle);

但是,在切换到C# 7之前,必须声明调用之外作为out参数传递的变量:

代码语言:javascript
复制
string workerName;
string workerTitle;
GetWorkerInfo(workerID, out workerName, out workerTitle);
票数 3
EN

Stack Overflow用户

发布于 2017-03-20 08:02:11

代码语言:javascript
复制
public static void GetWorkerInfo(long workerID, out string workerName, out string workerTitle)
{
   workerName = "";
   workerTitle = "";
}

那就这样叫吧

代码语言:javascript
复制
long workerID = 0;
string workerTitle;
string workerName;
GetWorkerInfo(workerID, out workerName, out workerTitle);
票数 1
EN

Stack Overflow用户

发布于 2017-03-20 08:04:31

此错误是因为您没有为指定为out参数的参数分配任何值。请记住,您应该在方法的主体内为这些参数分配一些值。

代码语言:javascript
复制
public static void GetWorkerInfo(long workerID, out string workerName, out string workerTitle)
{
   workerName = "Some value here";
   workerTitle = "Some value here also";
   // rest of code here
}

现在,您可以看到代码编译没有任何问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42898388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档