C#中如何实现这个类似于指针的功能?

任叔 2004-10-11 04:36:59
a = xxx;
b = a;(这里如何能修改成地址引用?)
希望之后a改变的时候,b也相应的改变
...全文
196 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
cedar_bj 2004-10-12
  • 打赏
  • 举报
回复
那就用ref 或 out 的方法。别的好象没有了。
任叔 2004-10-11
  • 打赏
  • 举报
回复
不想用unsafe的方式
xiandao82 2004-10-11
  • 打赏
  • 举报
回复
属于不安全代码应先unsafe再你的类的修饰符上,
int a=10;
int *b=&a;
a=50;
Console.WriteLine(*b);
任叔 2004-10-11
  • 打赏
  • 举报
回复
有类型安全的实现方式吗?
cedar_bj 2004-10-11
  • 打赏
  • 举报
回复
另一个方法。可以使用不安全代码。
在类的前面加上关键字unsafe
就可以在程序中使用类似c++的->指针了。
Csharpking 2004-10-11
  • 打赏
  • 举报
回复
可以参考装箱技术,因为应用类型内容一般放在托管堆上,而其相应的地址放在堆上
任叔 2004-10-11
  • 打赏
  • 举报
回复
a 和 b在一个代码段里,没办法通过ref传参实现
事实上b只是对象a的一个属性,我需要的是a.b=a
CSharpProgrammer 2004-10-11
  • 打赏
  • 举报
回复
int a=50;
int b;
public int ReturnAB(ref int a1,ref int b1)
{
相应的操作
}
在用ref 的时候要注意,在给函数传递的参数不能为空。 如果希望能传递的参数为空就用out 关键字。并且在函内部必须给参数赋值。
waximi 2004-10-11
  • 打赏
  • 举报
回复
入兔子,用引用变量
cedar_bj 2004-10-11
  • 打赏
  • 举报
回复
是在方法传递变量的时候用的。
cedar_bj 2004-10-11
  • 打赏
  • 举报
回复
用ref a
就可以实现。

110,547

社区成员

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

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

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