热情软件屋

 

Test a和Test *a;有什么不同


编号:QA002331
建立日期: 1999年12月27日 最后修改日期:1999年12月27日
所属类别:

snakes:
    如果有一个类Test;
    有三个这样的对象定义
    Test a;
    Test *a;
    Test *a=new Test;
    请问专家这三个定义的区别以及它们分别在什麽情况下使用。谢谢!!!!!!!

回答:

    Test a与Test *a的区别就如同int与int *的区别。Test a是一个普通的Test类型的变量,而Test *a是Test类型的指针变量。而你说的后两种定义从本质来说没有区别。采用Test a方法定义后,系统完成初试化工作,你就可以直接调用了。而Test *a只是定义了一个指针,在将这个指针指向实际对象之前,你不能调用该指针的任何成员。而你所说的第三种情况实际是使用New建立一个临时变量,然后将指针指向这个对象。

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio