C++ 对象的动态初始化

2024 年 8 月 28 日 | 3 分钟阅读

在此背景下,我们将讨论使用动态构造函数来初始化对象。

术语 “对象的动态初始化” 指的是在运行时初始化对象,或在当时赋予其初始值。这可以通过利用 构造函数 并向其提供 参数 来完成。当一个类有许多构造函数,每个构造函数都有不同的输入集时,这非常有用。

动态构造函数

术语 “动态函数 Object() { [native code] }” 指的是用于在运行时分配内存的函数 Object() { [native code] }

新运算符用于在运行时分配内存,而 delete 运算符 用于在运行时 释放 内存。

动态分配

方法

在下面的示例中,内存分配在堆上,并且使用 new 动态初始化变量的默认函数 Object() { [native code] }

该函数由类 “jtp” 的对象调用,然后输出动态分配变量 ptr 的值。

下面显示了使用 new 运算符进行动态对象初始化的软件

输出

10

动态释放

方法

在下面的代码中,使用 delete 动态释放内存。赋值运算符用于覆盖对象 obj1 在对象 obj2 中的内容,delete 运算符用于 释放 对象 obj1。

下面提供了使用 delete 运算符动态释放内存的代码。

输出

Value: 10
Value: 10

下面的 C++ 程序展示了如何动态初始化对象并计算银行存款

输出

Deposited amount (float):330.211

Deposited amount (integer):357.305

示例

在此示例中,我们有一个 “Student” 类,它有两个私有数据成员。

1) rNo - 用于跟踪学号

2) 使用百分比函数保存百分比。

输出

Enter roll number to initialize the object: 20
Enter percentage to initialize the object: 40
After initializing the object, the values are...

Roll number: 20
Percentage: 40%
Enter roll number: 30
Enter percentage: 50
Roll number: 30
Percentage: 50%