Pointers Part 3
Pointers Part 3
Pointers continued . . .
Copy Constructor
It is special type of constructor intended to copy one object (source) into another (target)
of the same class
Copy Constructor
It is special type of constructor intended to copy one object (source) into another (target)
of the same class
Copy Constructor
It is special type of constructor intended to copy one object (source) into another (target)
of the same class
Copy Constructor
It is special type of constructor intended to copy one object (source) into another (target)
of the same class
• Basic Syntax 2:
< class - name > < target - object > = < source - object >;
1 When an object is declared and initialized by using the value of another object
1 When an object is declared and initialized by using the value of another object
1 When an object is declared and initialized by using the value of another object
class List {
private : int main () {
int * data ;
int size ; List objectOne (5) ;
public :
List ( int size ) { objectOne . fill () ;
this - > size = size ; cout < < " obj1 : " ;
data = new int [ size ];
}
objectOne . print () ;
void fill () {
for ( int i =0; i < size ; i ++) List objectThree ( objectOne ) ;
data [ i ] = i * i ;
}
objectThree . update (0 ,3) ;
void update ( int index , int val ) {
data [ index ] = val ;
class List {
private : int main () {
int * data ;
int size ; List objectOne (5) ;
public :
List ( int size ) { objectOne . fill () ;
this - > size = size ; cout < < " obj1 : " ;
data = new int [ size ];
}
objectOne . print () ;
void fill () {
for ( int i =0; i < size ; i ++) List objectThree ( objectOne ) ;
data [ i ] = i * i ;
}
objectThree . update (0 ,3) ;
void update ( int index , int val ) {
data [ index ] = val ;
class List {
private :
int * data ; int main () {
int size ;
public : List objectOne (5) ;
List ( int size ) {
this - > size = size ; objectOne . fill () ;
data = new int [ size ]; cout < < " obj1 : " ;
}
void fill () {
objectOne . print () ;
for ( int i =0; i < size ; i ++)
data [ i ] = i * i ; destroyList ( objectOne ) ;
}
void print () {
for ( int i =0; i < size ; i ++) cout < < " \ n \ nobj1 : " ;
cout < < data [ i ] < < " " ; objectOne . print () ;
}
~ List () { }
delete [] data ;
}
};
class List {
private :
int * data ; int main () {
int size ;
public : List objectOne (5) ;
List ( int size ) {
this - > size = size ; objectOne . fill () ;
data = new int [ size ]; cout < < " obj1 : " ;
}
void fill () {
objectOne . print () ;
for ( int i =0; i < size ; i ++)
data [ i ] = i * i ; destroyList ( objectOne ) ;
}
void print () {
for ( int i =0; i < size ; i ++) cout < < " \ n \ nobj1 : " ;
cout < < data [ i ] < < " " ; objectOne . print () ;
}
~ List () { }
delete [] data ;
}
};