社区
C#
帖子详情
C#中如何实现这个类似于指针的功能?
任叔
2004-10-11 04:36:59
a = xxx;
b = a;(这里如何能修改成地址引用?)
希望之后a改变的时候,b也相应的改变
...全文
274
11
打赏
收藏
C#中如何实现这个类似于指针的功能?
a = xxx; b = a;(这里如何能修改成地址引用?) 希望之后a改变的时候,b也相应的改变
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用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
就可以实现。
C#
读书笔记----关于
C#
中
的委托函数
(自我感觉
C#
中
的委托函数就是C++
中
的函数
指针
的变化) 委托是一种可以把引用存储为函数的类型。 委托最终要的用途是与事件处理相关。 委托的声明非常
类似
于函数,但不带函数体,并且使用delegate关键字。委托的声明指定了一个返回类型和一个参数列表。在定义了委托后,就可以声明该委托类型的变量。接着把这个变量初始化为与委托有相同返回类型和参数列表的函数
【转】如何
实现
C#
代理(Delegate)
C#
代理实际上
类似
于C++
中
的函数
指针
,本文介绍了如何
实现
一个
C#
代理的三个步骤。
C#
代理实际上
类似
于C++
中
的函数
指针
,因为
C#
中
不存在
指针
,所以用代理可以完成一些原来在C++
中
用函数
指针
完成的操作,例如传递一个类A的方法m给另一个类B的对象,使得类B的对象能够调用这个方法m。但与函数
指针
相比,delegate有许多函数
指针
不具备的优点。首先,函数
指针
只能指向静态函数,而d...
委托和
指针
的不同
委托是一个可以对方法进行引用的类。与其他的类不同,委托类具有一个签名,并且它只能对与其签名匹配的方法进行引用。这样,委托就等效于一个类型安全函数
指针
或一个回调。C#
中
的委托和
指针
不一样,
指针
不通过MSIL而是直接和内存打交道,这也是
指针
不安全的原因所在,当然也是采用
指针
能够提高程序运行速度的缘故;委托不与内存打交道,而是把这一工作交给CLR去完成。CLR无法阻止将不安全的代码调用到本机(非托管
java函数
指针
数组,Java
中
的函数
指针
问题这可能是常见和微不足道的事情,但我似乎无法找到具体的答案。在
C#
中
有一个委托的概念,它强烈地与C的函数
指针
的想法有关。 Java
中
是否有
类似
的
功能
?鉴于
指针
有点缺席,最好的方法是什么?要说清楚,我们在这里谈论头等舱。#1 热门回答(115 赞)
类似
于函数
指针
的
功能
的Java习语是
实现
接口的匿名类,例如,Collections.sort(list, new Comparator(){public...
C#
out关键字
out是用于声明这个变量是传出变量,具体用法看下面例子。class OutExample{ static void Method(out int i) { i = 44; } static void Main() { int value; Method(out value);
C#
111,128
社区成员
642,536
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章