关于c++和c#的类的概念

来源:百度知道 编辑:UC知道 时间:2024/07/02 00:59:00
在c++中 类声明对象直接 类名 对象名 这样就可以了 可是在.net家族里 都得用new操作符 又说与 C#中值变量是放在栈中 引用变量放在堆中有关 我也不太理解 希望又人能帮忙解答一下

在C#中如果是这样Class class--在这里只是声明了一个Class的对象class,并没有实际的给class分配内存空间,只有当new了之后才会分配空间
值变量,引用变量可以这么举例:
我现在有一U盘,里面有一份文档,现在A拿过去可以用,B拿过去也可以用,但是AB2个人的文档都是相同的内容,如果A用的时候把文档内容改动了,那么B用的文档就是改过之后的内容...也就是说变量的值改动对其他变量有影响.....引用变量就是说这个U盘里面的资料只是可读的,不能修改..AB2人引用的只是U盘文档的地址(在内存中的位置),AB不能修改U盘文档的资料,AB2人的资料都是相同的一份

在C++中,类名+对象名 就完成了定义类型和给对象创建存储空间的过程,
在C#中,类型+对象名 只是定义类型,并没有分配存储空间,所以要用new来分配.
另外,C++中的类类型是值传递,C#中的类类型是引用传递
值传递就是
a=1;
b=a;
b=2;
这时a的值是1
引用传递就是
a=1;
b=a;
b=2
这时a的值是2