请问C#的函数参数如何像C++的函数的引用参数一样??

vanny_hanks 2014-09-26 10:32:50
比如C++里:
class A{
public int i;
};

A * a;
void func1(A * & a)
{
a=new A();
}
从func出来的时候, a指针实际上指了一个对象。

但是C#里面函数的参数都是引用,如果我这样写C#:
A a = null;
void func2(A a)
{
a=new A();
}
那么出来的时候a还是指向null.
我想怎么能让C#也达到C++这样的参数的效果?
我知道有一种解决方法就是把func2修改成这样
A func2()
{
A a=new A();
return a ;
}
调用就是:a=func2();
但是可不可以不这样。。因为我想return一个boolean,表示这个函数成功了没有。。。
跪求解惑。。。。。。。。。。。
...全文
102 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
vanny_hanks 2014-09-27
  • 打赏
  • 举报
回复
原来如此!谢谢啦!
devmiao 2014-09-26
  • 打赏
  • 举报
回复
用ref,如果只是输出,也可以用out
Rookie-jian 2014-09-26
  • 打赏
  • 举报
回复
A a = null; void func2(ref A a) { a=new A(); }

110,549

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧