codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <iostream> #include <cstring> using namespace std; class Person { public: char * str; Person(Person& n) { cout << "copy constructor1 " << n.str << endl; int len; len = strlen(n.str); str = new char[len + 1]; strcpy(str, n.str); } Person(const Person& n) { cout << "copy constructor2 " << n.str << endl; int len; len = strlen(n.str); str = new char[len + 1]; strcpy(str, n.str); } Person(const char* s) { cout << "normal constructor" << endl; int len; len = strlen(s); str = new char[len + 1]; strcpy(str, s); } ~Person() { cout << "destructor" << endl; delete[] str; } void display() { cout << str << endl; } }; void whatName(Person n) { n.display(); } int main() { Person p1("Jack"); whatName(p1); whatName("Mary"); return 0; }
Private
[
?
]
Run code
Submit