Case where structure instance copy is not allowed
A program to explain the case where instance copying is not permitted.
Learning Objectives
- Understanding the case where structure instances can not be copied directly.
- Instances/Objects when derived from two different structures have to be copied on individual variable level.
Source Code
|
Run Output
Code Understanding
struct X{ int x;}X1;
This is structure X with with X1 as its instance
struct Y{ int x;}Y1;
This structure Y with same kind of declaration as X but with instance as Y1
X1.x=10; //variable x of X1 has been updated to value 10
//Y1=X1;
This copy of instance is not allowed as X1 and Y1 come from different physical declarations even if their internal construct is same. Users are advised to remove this comment and make a try to see the errors.
Y1.x=X1.x; //This is the alternate way of copying at the individual value level.
cout<<“X1.x =”<<X1.x<<endl;
cout<<“Y1.x =”<<Y1.x<<endl;
Output as per updated data is printed here.
Notes
- Structure copying is allowed for instances created from the same definition of structure as given in example #2916.
Suggested Filename(s): struncpy.cpp
sunmitra| Created: 22-Jan-2018 | Updated: 22-Jan-2018|