C++类与对象:定义、访问控制及内存管理详解

1. 类的定义与访问控制

1.1 类的基本结构

在C++中,类是面向对象编程的核心概念。一个典型的类定义包含成员变量和成员函数,它们共同描述了对象的属性和行为。下面是一个完整的类定义示例:

cpp复制class Student {
private:
    std::string name_;  // 成员变量通常以下划线结尾
    int age_;
    float gpa_;

public:
    // 构造函数
    Student(const std::string& name, int age, float gpa)
        : name_(name), age_(age), gpa_(gpa) {}

    // 成员函数
    void printInfo() {
        std::cout << "Name: " << name_ 
                  << ", Age: " << age_
                  << ", GPA: " << gpa_ << std::endl;
    }

    // 设置器
    void setGPA(float gpa) {
        if (gpa >= 0.0 && gpa <= 4.0) {
            gpa_ = gpa;
        }
    }

    // 获取器
    float getGPA() const {
        return gpa_;
    }
};

注意:类定义最后的分号不能省略,这与函数定义不同。新手常犯这个错误。

1.2 访问限定符详解

C++提供了三种访问限定符来控制类成员的可见性:

  1. public:在任何地方都可以访问
  2. private:只能在类内部访问(默认)
  3. protected:类似于private,但允许派生类访问

访问控制的实际应用场景:

  • 将数据成员设为private,防止外部直接修改
  • 通过public成员函数提供受控的访问接口
  • 将工具函数设为private,仅供类内部使用
cpp复制class BankAccount {
private:

内容推荐

已经到底了哦
已经到底了哦