#include iostreamusing namespace std;class Line {public:int getLength( void );Line( int len );// simple constructor
编程学习网为您整理以下代码实例,主要实现:C++使用另一个对象复制构造函数,希望可以帮到各位朋友。
@H_419_1@#include <iostream> using namespace std; class line { public: int getLength( voID ); line( int len ); // simple constructor line( const line &obj); // copy constructor ~line(); // destructor private: int *ptr; }; // Member functions deFinitions including constructor line::line(int len) { cout << "normal constructor allocating ptr" << endl; // allocate memory for the pointer; ptr = new int; *ptr = len; } line::line(const line &obj) { cout << "copy constructor allocating ptr." << endl; ptr = new int; *ptr = *obj.ptr; // copy the value } line::~line(voID) { cout << "Freeing memory!" << endl; delete ptr; } int line::getLength( voID ) { return *ptr; } voID display(line obj) { cout << "Length of line : " << obj.getLength() <<endl; } // Main function for the program int main() { line line1(10); line line2 = line1; // This also calls copy constructor display(line1); display(line2); return 0; }
沃梦达教程
本文标题为:C++使用另一个对象复制构造函数
基础教程推荐
猜你喜欢
- C++按值调用 1970-01-01
- C++ #define 1970-01-01
- 明确指定任何或所有枚举数的整数值 1970-01-01
- 初始化变量和赋值运算符 1970-01-01
- C++输入/输出运算符重载 1970-01-01
- end() 能否成为 stl 容器的昂贵操作 2022-10-23
- 使用scanf()读取字符串 1970-01-01
- C语言访问数组元素 1970-01-01
- 分别使用%o和%x以八进制或十六进制格式显示整 1970-01-01
- C++定义类对象 1970-01-01