请教C#中参数传递问题,请指教

zlh0614 2003-10-13 01:10:08
我有一个函数getphone(string number,string message),通过这个函数可以取道号码和信息两个内容,我在别的事件中调用这个函数时,参数该怎么写,总是出错,因为这两个参数是我要得到的值。请问这样写对吗

private void button1_Click(object sender, System.EventArgs e)
{
string d_number="";
string d_message="";
getphone(ref string d_number,ref string d_message);
messageBox.show(d_number+d_message);
}

但总是提示出错,说托管代码出错,请教各位,该如何写,谢谢~!
...全文
33 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xixigongzhu 2003-10-13
  • 打赏
  • 举报
回复
getphone(ref d_number,ref d_message);

定义getphone这个函数时也应该有ref:
getphone(ref string d_number,ref string d_message){
//方法体;
}
hcfalan 2003-10-13
  • 打赏
  • 举报
回复
如果按照楼主那样写的话,应该是编译不过去的。使用ref 和 out 修饰参数都可以达到目的,具体使用那种要依具体使用情况而定:

1. 使用ref
//getphone 函数的定义
public void getphone(ref string a, ref string b)
{...}
//getphone 函数的使用
string aa = "", bb = "";
getphone(ref aa, ref bb);


2. 使用out
//getphone 函数的定义
public void getphone(out string a, out string b)
{...}
//getphone 函数的使用
string aa, bb;
getphone(out aa, out bb);

还是有点不同吧
HNU 2003-10-13
  • 打赏
  • 举报
回复
用getphone(d_number, d_message);

对吗?
levinknight 2003-10-13
  • 打赏
  • 举报
回复
用引用传递
2002pine 2003-10-13
  • 打赏
  • 举报
回复
应用时
string d_number="";
string d_message="";
用getphone(d_number, d_message);

messageBox.show(d_number+d_message);
JoeM 2003-10-13
  • 打赏
  • 举报
回复
改为:
getphone(ref string number,ref string message)
{}

110,539

社区成员

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

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

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