为构造函数中给出的参数分配内存'类

时间:2014-09-18 11:03:42

标签: c++ constructor

我们假设,我们有一个类,我们必须在其中构建为其参数分配内存的构造函数,即根据它们的值。

我想我可能会搞砸一下,但至少我试了一下。

#include <iostream> 

using namespace std; 

class Person
{ 
   private: 
      int height 
      int age; 

   public: 
      Person(int height, int age){}
}; 

Person::Person(int *height, int *age)
{ 
   int *height1 = new int; 
   int *age = new int; 
} 

是否有任何好的或绝对无望的尝试?

1 个答案:

答案 0 :(得分:2)

正如评论中所指出的,签名并不匹配。 此外,如果您只想存储传递的值,则无需使用新的。

你可以做到

Person::Person(int h, int a)
{ 
   this->height = h; 
   this->age = a; 
} 

或者,有点短:

Person::Person(int h, int a) : height(h), age(a) {}