.NET中对象的问题
.NET中,假如有class A,以及一个A的实例objA
现在定义
dim objB as A
objA=new A
objB = objA
这两个对象的引用objA objB 是不是指向同一块内存区(存储objA内容)
怎么才能让objA objB 指向不同的区域,但两者的内容是一样的?
[解决办法]
The Is operator determines if two object references refer to the same object. However, it does not perform value comparisons. If object1 and object2 both refer to the exact same object instance, result is True; if they do not, result is False.
用vb 的is运算符
怎么才能让objA objB 指向不同的区域,但两者的内容是一样的?
dim objB as new A
objA=new A
objB = objA
最好在class A中实现拷贝构造函数
[解决办法]
如果让他们指向不同的区域,重新实例化另外一个A,而不是简单的等于;
楼上说的对,最好实现拷贝构造函数,如果结果复杂的引用类型类,一般都会提供Copy函数的。
例如DataTable
==================================================================
博客空间:http://blog.csdn.net/lovingkiss
资源下载:http://download.csdn.net/user/lovingkiss
Email:loving-kiss@163.com
本人说明: <我的帖子我做主,结贴率保持100%>
优惠接单开发,信誉保证,Q64180940(请清楚注明业务还是技术咨询)
==================================================================