在C++中,类(Class)是一种用户自定义的数据类型,它允许将数据和功能结合在一起。类可以被看作是创建对象的蓝图或模板。以下是在C++中创建类的基本步骤和概念: 1. 定义类类的定义在C++中使用class 关键字(对于结构体,使用struct ,但结构体和类在C++中几乎相同,除了默认的继承访问权限不同)。 class MyClass {
// 类成员定义
};
2. 类的成员- 数据成员:存储数据的变量,可以是私有(private)或公有(public)。
- 成员函数:定义行为的函数,可以是普通函数或友元函数,也可以有不同访问权限。
class MyClass {
private:
int privateData; // 私有数据成员
public:
int publicData; // 公有数据成员
void memberFunction(); // 公有成员函数
};
3. 访问修饰符public :类成员可以被任何对象访问。private :只有类自己的成员函数和友元可以访问。protected :类自己的成员函数、友元以及子类可以访问。
4. 构造函数和析构函数- 构造函数:当对象被创建时自动调用,用于初始化对象。
- 析构函数:当对象生命周期结束时自动调用,用于清理资源。
class MyClass {
public:
MyClass(); // 构造函数
~MyClass(); // 析构函数
};
5. 初始化列表构造函数可以使用初始化列表来初始化数据成员。 class MyClass {
int value;
public:
MyClass(int val) : value(val) {} // 使用初始化列表
};
6. 成员函数的定义类定义中的成员函数通常是原型声明,需要在类外定义。 class MyClass {
public:
void display() const;
};
void MyClass::display() const {
std::cout << "Display function called." << std::endl;
}
7. 创建对象使用类创建对象时,可以调用构造函数来初始化对象。 MyClass myObject; // 默认构造函数
MyClass myObject2(10); // 带参数的构造函数
8. 友元函数友元函数或友元类可以访问类的私有和保护成员。 class MyClass {
int data;
public:
friend void friendFunction(MyClass obj);
};
void friendFunction(MyClass obj) {
std::cout << obj.data << std::endl; // 直接访问私有成员
}
9. 静态成员静态成员属于类本身,而不是类的单个实例。 class MyClass {
public:
static int staticData;
};
int MyClass::staticData = 0; // 定义和初始化静态成员
10. 类的继承一个类可以继承另一个类的属性和方法。 class BaseClass {
};
class DerivedClass : public BaseClass { // 公有继承
// 继承BaseClass的成员
};
11. 类的封装封装是将数据和操作这些数据的函数捆绑在一起,并对外部世界隐藏实现细节。 class BankAccount {
private:
double balance; // 私有数据成员
public:
void deposit(double amount); // 公有成员函数
void withdraw(double amount);
double getBalance() const; // 提供对余额的访问
};
12. 类的多态多态允许通过基类指针或引用调用派生类的函数。 class Base {
public:
virtual void doSomething() {}
};
class Derived : public Base {
public:
void doSomething() override {
// 重写基类方法
}
};
在C++中创建类是一个基础而强大的概念,它允许开发者构建复杂的数据结构和算法。通过合理使用类,可以提高代码的组织性、可读性和可重用性。
(责任编辑:admin) |