21xrx.com
2024-11-25 12:02:51 Monday
登录
文章检索 我的文章 写文章
C++中如何创建对象?
2023-07-03 04:53:32 深夜i     --     --
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”关键字创建对象即可。这种简单的方法可用于创建各种各样的对象,从而实现各种各样的功能。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复