📜  C++对象类(1)

📅  最后修改于: 2023-12-03 15:14:04.302000             🧑  作者: Mango

C++对象类

C++中的对象类是一种用于封装数据和方法的数据类型。它允许程序员将数据和方法捆绑在一起,以形成一个独立的实体,这个实体可以通过接口来访问。

定义类

定义一个类时,需要使用关键字class,并且还需要指定访问级别,默认为private

class MyClass {
public: // 访问级别为public
    // 数据成员
    int member;

    // 成员函数
    void myFunction() {
        // 实现
    }
};
访问控制

C++中,访问控制分为三种,即publicprivateprotected。这些关键字控制了类的数据成员和成员函数的访问级别。

  • public:表示数据成员或成员函数可以被任何对象或函数访问。
  • private:表示数据成员或成员函数只能被同一类中的其他成员访问,不能被外部函数或对象访问。
  • protected:表示数据成员或成员函数只能被同一类或其子类中的其他成员访问,不能被外部函数或对象访问。
类的实例化

类的实例化类似于结构体的声明和实例化。需要使用类名和new关键字创建一个对象。示例代码如下:

MyClass *instance = new MyClass(); // 创建一个MyClass类型的对象
instance->member = 123; // 设置数据成员的值
instance->myFunction(); // 调用成员函数
delete instance; // 释放内存
类的继承

在C++中,可以通过继承来扩展一个类。通过继承,可以从已有的类创建一个新类,继承旧类中的数据成员和成员函数。

class MyChildClass: public MyClass {
public:
    // 新的成员函数
    void myNewFunction() {
        // 实现
    }
};

MyChildClass *instance = new MyChildClass(); // 创建一个MyChildClass类型的对象
instance->member = 456; // 可以访问父类中的数据成员
instance->myFunction(); // 可以调用父类中的成员函数
instance->myNewFunction(); // 调用新的成员函数
delete instance; // 释放内存
析构函数

在一个对象被销毁时,会自动调用一个与类名相同的函数,这个函数叫做析构函数。析构函数的作用是释放对象所占用的内存,并调用对象中的其他析构函数。

class MyClass {
public:
    ~MyClass() {
        // 实现
    }
};

MyClass *instance = new MyClass(); // 创建一个MyClass类型的对象
delete instance; // 调用析构函数并释放内存
总结

C++中的对象类是一种用于封装数据和方法的数据类型。它允许程序员将数据和方法捆绑在一起,以形成一个独立的实体,这个实体可以通过接口来访问。使用C++对象类可以轻松地创建并管理复杂的数据类型,从而降低了程序的复杂性。