#include <iostream> using namespace std; class A { int v; public: A() { cout << "A1" << endl; } A(int v ) { this->v = v; cout << "A2, v=" << this->v << endl; } }; int main(){ A a1[2]; A a2[2] = {5,10}; A *p = new A[2]; return 0; }
时间: 2024-04-02 22:36:48 浏览: 47
#include_iostream.h_
4星 · 用户满意度95%
这段代码中定义了一个名为A的类,并在主函数中创建了三个A类对象数组a1、a2和p。
a1数组中有两个元素,因为没有给出任何参数,所以默认使用A类的默认构造函数,输出结果为"A1",即两次。
a2数组中也有两个元素,第一个元素使用了A类的带参构造函数,参数为5,输出结果为"A2, v=5";第二个元素同理,参数为10,输出结果为"A2, v=10"。
p是一个指向A类对象数组的指针,通过new关键字动态分配了两个A类对象,同样使用了默认构造函数,输出结果为"A1",即两次。
需要注意的是,这段代码中没有定义任何析构函数,因此可能会存在内存泄漏问题。
阅读全文