定义 (Definition)
class MyClass {
public:
MyClass(int x); // 构造函数
void printValue() const; // 成员函数
private:
int value; // 成员变量
};
声明 (Declaration)
class MyClass; // 类的声明
void someFunction(MyClass& obj); // 函数声明,这里我们声明了一个接受 MyClass 引用的函数
创建对象 (Creating an Object)-实例化对象 (Instantiating an Object)
创建对象 通常指的是分配内存空间,并通过构造函数初始化该对象的过程。这可以是动态分配内存(使用
new
关键字),也可以是在栈上分配内存(直接通过构造函数)。
MyClass obj(10); // 在栈上创建 MyClass 对象
MyClass* pObj = new MyClass(10); // 动态创建 MyClass 对象
综合示例
#include <iostream>
// 定义 MyClass
class MyClass {
public:
MyClass(int x) : value(x) {} // 构造函数
void printValue() const { std::cout << "Value: " << value << std::endl; } // 成员函数
private:
int value; // 成员变量
};
// 声明函数
void someFunction(MyClass& obj);
// 主函数
int main() {
// 创建 MyClass 对象
MyClass obj1(10); // 在栈上创建
MyClass* obj2 = new MyClass(20); // 动态创建
// 调用函数
someFunction(obj1);
someFunction(*obj2);
delete obj2; // 删除动态创建的对象
return 0;
}
// 函数实现
void someFunction(MyClass& obj) {
obj.printValue();
}