社区
C#
帖子详情
请问C#语法问题:方法参数中有out和in关键字是什么意思?
屡败屡战数马援
2003-11-10 04:56:24
比如方法定义
public bool FunctionA(string Str,out int Back)
{
// ....
}
我发现在方法参数中有的带in,有的带out,不明白什么意思。我在vs.net带的C#语言参考里面没有找到,请教高手解答。谢谢!
...全文
476
4
打赏
收藏
请问C#语法问题:方法参数中有out和in关键字是什么意思?
比如方法定义 public bool FunctionA(string Str,out int Back) { // .... } 我发现在方法参数中有的带in,有的带out,不明白什么意思。我在vs.net带的C#语言参考里面没有找到,请教高手解答。谢谢!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ball_24
2003-11-10
打赏
举报
回复
大哥,最好的老师就是Help
brightheroes
2003-11-10
打赏
举报
回复
同楼上
gshope
2003-11-10
打赏
举报
回复
另外一个是int,不是in,你看错了。
gshope
2003-11-10
打赏
举报
回复
out请参见
C# 关键字 | 方法参数
方法参数上的 out 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。
当希望方法返回多个值时,声明 out 方法非常有用。使用 out 参数的方法仍然可以返回一个值。一个方法可以有一个以上的 out 参数。
若要使用 out 参数,必须将参数作为 out 参数显式传递到方法。out 参数的值不会传递到 out 参数。
不必初始化作为 out 参数传递的变量。然而,必须在方法返回之前为 out 参数赋值。
属性不是变量,不能作为 out 参数传递。
如果两个方法的声明仅在 out 的使用方面不同,则会发生重载。不过,无法定义仅在 ref 和 out 方面不同的重载。例如,以下重载声明是有效的:
class MyClass
{
public void MyMethod(int i) {i = 10;}
public void MyMethod(out int i) {i = 10;}
}
而以下重载声明是无效的:
class MyClass
{
public void MyMethod(out int i) {i = 10;}
public void MyMethod(ref int i) {i = 10;}
}
有关传递数组的信息,请参见使用 ref 和 out 传递数组。
示例
// cs_out.cs
using System;
public class MyClass
{
public static int TestOut(out char i)
{
i = 'b';
return -1;
}
public static void Main()
{
char i; // variable need not be initialized
Console.WriteLine(TestOut(out i));
Console.WriteLine(i);
}
}
输出
-1
b
请参见
C# 关键字 | 方法参数
哈尔滨探秘微信小程序:从技术解析到完整复现(附核心代码)
哈尔滨探秘微信小程序:从技术解析到完整复现(附核心代码)
旧型饼形图转为js图五
Webji-23.html
毕设&课设:一个基于 AI 的智能菜谱推荐系统,帮助你解决-今天吃什么-的困扰.zip
经导师指导并认可通过的大作业设计项目源码,适用人群:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业或毕业设计,作为“参考资料”使用。
mobile-0.6.0-alpha.jar
mobile-0.6.0-alpha.jar
K-means聚类算法可视化Python代码 包含肘部法则和轮廓系数分析
# K-means聚类算法可视化Python代码 K-means聚类算法实现,包含肘部法则和轮廓系数分析功能。提供丰富的可视化和分析工具,适用于数据科学学习和实际项目应用。 ## 快速开始 ### 环境要求 ```bash pip install numpy matplotlib seaborn scikit-learn pandas ``` ### 完整演示 运行主程序查看完整功能演示: ```bash python main.py ```
C#
111,111
社区成员
642,556
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章