c++ - Assigning structs including pointers -
consider following simple program. defines 2 variables a
, b
mystruct
, initializes a
.
how can copy a
b
new pointers b
?
if use assignment operator, firstmember
of b
assigned firstmember
of a
, whenever change value of b.firstmember[i]
, value of a.firstmember[i]
change. know can done function, there simpler way? assuming mystruct
can have lots pointers, writing function doesn't seem good.
typedef struct mystruct { int * firstmember; int secondmember; } mystruct; int main() { mystruct a; mystruct b; initialize(a); // initializes such a.firstmember[0] != 5 b = a; b.firstmember[0] = 5; cout<<a.firstmember[0]; // prints 5 return 0; }
this falls "rule of 3". once start managing raw pointers inside class, want define custom contructor, destructor, , assignment operator reason.
Comments
Post a Comment