编程学习网为您整理以下代码实例,主要实现: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; }
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!