A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 苟于伟 于 2013-5-17 12:47 编辑
  1. class Pr
  2. {
  3. ....................假如说这是一个类
  4. }

  5. class Pr1
  6. {
  7. ....................假如说这又是一个类
  8. }
  9. static void Main(string[] args)
  10. {
  11.     Pr r1 = new Pr ();
  12. Pr a;

  13. Pr c;
  14. a=a+c;//可以这样算计吗?
  15. Pr1  r2 =new Pr();
  16. Pr1 b;

  17. a=b;//这样Pr中的局部变量可以的Pr1中的局部变量进行传值吗?
  18.            
复制代码

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

2 个回复

正序浏览
本帖最后由 周琪 于 2013-5-18 19:23 编辑

你创建一个类会在堆中。
你声明的变量在栈中,变量只是一个引用,它指向堆,即它的成员都在堆中。

你把两个相同类的对象的引用相加是什么意思?让他们的成员叠加?你能解释清楚么。
另外两个类要是没有继承关系的话,是不可以一个的对象给另一个的对象赋值,  赋值是什么意思?你能解释清楚不。呵呵。我想黑马的老师恐怕也不能解释吧。《惨了,老师听见了。。。。》
下面只针对你的程序说下
  • Pr r1 = new Pr ();
  • Pr a;   //这时候,a是不指向堆的。这时你在即时窗口中输入 *a 并按回车, 可以看见0x00000000
  • Pr c;   //同理, 可以看见0x00000000
  • a=a+c;// 把空引用加上空引用,什么意思?呵呵
  • Pr1  r2 =new Pr();
  • Pr1 b;
  • a=b;  //a和b根本就不是一个类,还都是空引用。


回复 使用道具 举报
两个对象相加应该不能计算吧。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马