C++利用new创建person类的对象的例子
时间: 2023-05-23 21:00:45 浏览: 91
好的,以下是一个利用new创建person类对象的例子:
```c++
#include <iostream>
class Person {
public:
std::string name;
int age;
Person(std::string n, int a) {
name = n;
age = a;
}
};
int main() {
Person* p = new Person("Tom", 20);
std::cout << "Name: " << p->name << std::endl;
std::cout << "Age: " << p->age << std::endl;
delete p;
return 0;
}
```
在上述例子中,我们定义了一个Person类,该类包含了成员变量name和age。使用new操作符来创建一个名为p的Person对象,在创建对象时需要传递两个参数(name和age)。最后使用delete操作符来释放内存。
相关问题
c++类和对象的创建和使用
在C++中,类是一种自定义数据类型,它可以包含数据成员和成员函数。通过定义类,可以创建对象,即该类的实例。对象是类的一个实例,它具有该类定义的所有属性和行为。
1. 类的定义
类的定义包括数据成员和成员函数。数据成员是类的属性,成员函数是类的行为。下面是一个简单的类定义示例:
```cpp
class Person {
private:
string name;
int age;
public:
void setName(string n) {
name = n;
}
void setAge(int a) {
age = a;
}
string getName() {
return name;
}
int getAge() {
return age;
}
};
```
在这个例子中,Person是类的名称,它包含两个私有数据成员name和age,以及四个公共成员函数setName、setAge、getName和getAge。
2. 对象的创建
对象是类的一个实例,可以通过以下方式创建:
```cpp
Person p1; // 创建一个名为p1的Person对象
Person p2 = Person(); // 使用默认构造函数创建一个名为p2的Person对象
Person *p3 = new Person(); // 使用new运算符动态分配内存并创建一个名为p3的Person对象
```
3. 对象的使用
对象可以使用成员访问运算符"."访问其数据成员和成员函数,例如:
```cpp
p1.setName("Alice");
p1.setAge(20);
cout << "Name: " << p1.getName() << endl;
cout << "Age: " << p1.getAge() << endl;
```
这段代码将设置p1对象的名称为"Alice",年龄为20,并输出其名称和年龄。
4. 对象的销毁
当对象不再需要时,应使用delete运算符释放其内存,例如:
```cpp
delete p3;
```
这将删除p3对象并释放其使用的内存。如果没有及时删除动态分配的对象,可能会导致内存泄漏。
C++类实例化对象
C++中,类实例化对象也称为类的实例或对象。要创建一个类的实例,需要使用`new`关键字分配内存,然后调用构造函数初始化对象。例如:
```c++
class Person {
public:
Person(string name) {
this->name = name;
}
void sayHello() {
cout << "Hello, my name is " << name << endl;
}
private:
string name;
};
int main() {
Person* p = new Person("John"); // 创建Person类的实例
p->sayHello(); // 调用Person类的方法
delete p; // 释放内存
return 0;
}
```
在上面的例子中,我们先定义了一个名为Person的类,然后通过`new`关键字为其分配内存并调用构造函数初始化对象,得到一个指向该对象的指针p。最后,我们通过指针p调用Person类的方法sayHello(),输出对象的名字。最后,我们使用`delete`关键字释放指针p所占用的内存。