C++ 构造函数
2016-04-04 14:31
239 查看
#include <iostream> using namespace std; class Test { public: Test(int n) { cout << "1" << endl; } Test(int n, int m) { cout << "2" << endl; } Test() { cout << "3" << endl; } }; int main() { Test array1[3] = { 1, Test(1,2) }; Test array2[3] = { Test(2,3), Test(1,2),1 }; Test *pArray1[3]; Test *pArray2[3] = { new Test(1,2), new Test(2)}; Test *pArray3[3] = { &Test(1), &Test(1,2)}; return 0; }
创造对象的时候都会执行构造函数。
对于指针,只声明指针时并不会执行构造函数,如pArray1;
声明指针并用new分配或者指定对象地址时,就会执行构造函数,如 pArray2, pArray3。
相关文章推荐
- C/C++—— C++中构造函数不能是虚函数的原因分析
- C++ error: default argument given for parameter 1
- Count Primes
- 左旋转字符串m位
- CSP考试 2013年12月第3题 最大矩形 C语言实现
- 设计模式C++工厂模式
- C++的tie()函数
- [C++]字符串流 istringstream 和 ostringstream 的用法
- C/C++—— 在构造函数中调用虚函数能实现多态吗(Vptr指针初始化的过程分析)
- C++:标准IO(输入输出)
- C/C++—— C++编译器是如何实现多态
- c语言中宏定义和函数区别
- C++ vector::resize
- Count Primes
- C++ set_union
- VC++执行多条dos命令方法
- C++ inserter
- 30.C语言结构体对齐访问
- 【算法】蛇形矩阵
- Ugly Number II(求第N个丑数)