21xrx.com
2025-03-28 20:34:22 Friday
文章检索 我的文章 写文章
C++中如何创建对象?
2023-07-03 04:53:32 深夜i     12     0
C++ 创建 对象

在C++中,可以使用关键字“new”和构造函数来创建对象。构造函数是一种特殊的函数,用于初始化类的对象。在类的定义中,构造函数是以类名命名的函数,它没有返回类型,也没有返回值。以下是一个简单的示例,展示了如何创建一个名为“person”的类的对象:

class person {
  public:
    string name;
    int age;
    person() // 构造函数
      name = "John";
      age = 20;
    
};
int main() {
  person *p = new person(); // 使用new关键字创建person类的对象
  cout << p->name << " is " << p->age << " years old." << endl;
  delete p; // 必须显式地释放对象的内存
  return 0;
}

在这个例子中,我们使用关键字“new”用类的构造函数创建了一个新的person类的对象。注意,在使用“new”时,需要使用指针来存储对象的地址。然后,我们可以使用“->”运算符来访问对象的成员变量。最后,我们通过使用“delete”操作符来释放对象的内存。如果忘记释放内存,可能会导致内存泄漏和资源浪费。

除了使用“new”和构造函数,还可以使用类的重载运算符来创建对象。这就需要在类的定义中重载“()”运算符。以下是一个简单的例子,演示了如何使用重载运算符创建一个名为“point”的类的对象:

class point {
  public:
    int x;
    int y;
    point()
      x = 0;
      y = 0;
    
    point operator()(int a, int b) // 重载运算符
      point p;
      p.x = a;
      p.y = b;
      return p;
    
};
int main() {
  point p;
  p = point()(10, 20); // 使用重载运算符创建point类的对象
  cout << "X坐标: " << p.x << endl;
  cout << "Y坐标: " << p.y << endl;
  return 0;
}

在这个例子中,我们在类的定义中重载了“()”运算符,该运算符将int类型的参数a和b分别存储到它创建的新point类的对象p的成员变量x和y中,并返回该对象。在主函数中,我们将这个新对象赋给名为p的point类对象,并输出它的成员变量。这样就可以创建和初始化一个point类的对象。

总体来说,在C++中创建对象很简单,只需要使用类的构造函数或重载运算符,然后使用“new”关键字创建对象即可。这种简单的方法可用于创建各种各样的对象,从而实现各种各样的功能。

  
  

评论区

请求出错了