C++--day3(内联函数、结构体、类、封装、this、构造函数、析构函数)
发布人:shili8
发布时间:2025-01-20 01:02
阅读次数:0
**C++基础-Day3**
### 内联函数在 C++ 中,内联函数是一种特殊的函数,它可以直接在调用处展开,而不是像普通函数那样被分配到一个独立的块中。这种机制可以提高程序的执行效率,因为它避免了函数调用的开销。
cpp// 内联函数示例inline int max(int a, int b) { return (a > b) ? a : b; }
在上面的代码中,`max()` 函数被声明为内联函数。这样,当你调用 `max(5,10)` 时,它会直接展开成 `(5 >10) ?5 :10`。
### 结构体结构体(struct)是 C++ 中的一种用户定义的数据类型,它可以包含多个成员变量。与类(class)相比,结构体的成员变量都是公有的。
cpp// 结构体示例struct Person { int age; std::string name; };
在上面的代码中,我们定义了一个名为 `Person` 的结构体,它包含两个成员变量:`age` 和 `name`。由于结构体的成员变量都是公有的,所以你可以直接访问它们。
cpp// 结构体使用示例int main() { Person person; person.age =25; person.name = "John"; return0; }
### 类类(class)是 C++ 中的一种用户定义的数据类型,它可以包含多个成员变量和成员函数。与结构体相比,类的成员变量都是私有的。
cpp// 类示例class Person { private: int age; public: std::string name; };
在上面的代码中,我们定义了一个名为 `Person` 的类,它包含两个成员变量:`age` 和 `name`。由于类的成员变量都是私有的,所以你需要使用 getter 和 setter 方法来访问它们。
cpp// 类使用示例class Person { private: int age; public: std::string name; // Getter方法 int getAge() { return age; } // Setter方法 void setAge(int a) { age = a; } }; int main() { Person person; person.setAge(25); person.name = "John"; return0; }
### 封装封装(encapsulation)是 C++ 中的一种机制,它可以将数据和行为结合起来,形成一个独立的单元。这种机制可以提高程序的安全性和可维护性。
cpp// 封装示例class Person { private: int age; public: std::string name; // Getter方法 int getAge() { return age; } // Setter方法 void setAge(int a) { age = a; } };
在上面的代码中,我们定义了一个名为 `Person` 的类,它包含两个成员变量:`age` 和 `name`。由于类的成员变量都是私有的,所以你需要使用 getter 和 setter 方法来访问它们。
### this`this` 是 C++ 中的一个关键字,它指向当前对象的地址。
cpp// this示例class Person { public: std::string name; void sayHello() { std::cout << "Hello, my name is " << this->name << std::endl; } };
在上面的代码中,我们定义了一个名为 `Person` 的类,它包含一个成员变量 `name` 和一个成员函数 `sayHello()`。在 `sayHello()` 函数中,我们使用 `this->name` 来访问当前对象的 `name` 成员变量。
### 构造函数构造函数(constructor)是 C++ 中的一种特殊函数,它用于初始化对象的成员变量。当你创建一个新对象时,构造函数会被自动调用。
cpp// 构造函数示例class Person { public: std::string name; // 构造函数 Person(std::string n) { name = n; } };
在上面的代码中,我们定义了一个名为 `Person` 的类,它包含一个成员变量 `name` 和一个构造函数。构造函数接受一个参数 `n`,并将其赋值给 `name` 成员变量。
### 析构函数析构函数(destructor)是 C++ 中的一种特殊函数,它用于释放对象占用的资源。当你删除一个对象时,析构函数会被自动调用。
cpp// 析构函数示例class Person { public: std::string name; // 构造函数 Person(std::string n) { name = n; } // 析构函数 ~Person() { std::cout << "Person object destroyed." << std::endl; } };
在上面的代码中,我们定义了一个名为 `Person` 的类,它包含一个成员变量 `name`、一个构造函数和一个析构函数。析构函数会输出一条消息,指示 Person 对象被销毁。
### 总结本文介绍了 C++ 中的一些基本概念,包括内联函数、结构体、类、封装、this、构造函数和析构函数。这些概念对于理解 C++语言的核心原理至关重要。