永发信息网

C++中 new 在什么时候用?? 为什么 Class c = new Class报错

答案:4  悬赏:30  手机版
解决时间 2021-01-08 13:31
  • 提问者网友:不要迷恋哥
  • 2021-01-07 21:56
C++中 new 在什么时候用?? 为什么 Class c = new Class报错
最佳答案
  • 五星知识达人网友:神的生死簿
  • 2021-01-07 23:13
1>Class c=new Class
new Class 表示在堆栈中创建一个Class类变量,而要访问这个变量,必须通过指针来访问,因此
应该改为:Class *c=new Class;
2>请高手解释下 Class *c = new Class ; Class *c ; Class c ;
第一个是在堆栈中创建Class类型的变量并用指向Class类变量的指针指向它
第二个是创建一个指向Class类型变量的指针
第三个是创建Class类型的变量
3>建议在类、变量、函数名等命名时尽量不要与关键字相似,最好去找一些命名规则来看一下,其实命名是很有讲究的,像你所提问题中的Class最好改为CClass这是因为类的命名规则一般前面都会加一个“C”以表示这是一个类。
全部回答
  • 1楼网友:时间的尘埃
  • 2021-01-08 01:51
new函数是返回的是一个指针,当然必需赋值给一个指针.
  • 2楼网友:雾月
  • 2021-01-08 01:10
new主要为指针分配内存,不能乱用,类建立时不需要new的,跟纯粹的面向对象的语言不同。比如:
int * a=new int;
在链表中经常用到new为新建的struct或class非配内存空间,并用指针接收
  • 3楼网友:逐風
  • 2021-01-07 23:55
new返回的是一个指针,所以必须用指针接收
Class *c = new Class ; // 定义一个Class类的指针c,创建一个Class类对象,并赋给这个指针
Class *c ; // 定义一个Class类指针c
Class c ; // 定义一个Class类对象
对象调用属性用.操作符,指针调用属性用->操作符,第三种在实际应用中不常用,因为涉及到多台继承等问题都用指针解决。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯