|
Structure:
Structures in C++ is a collection of variables. Structures in C++ can be declared
even without the keyword "struct". By default all the members of a structure are "public", even "private" members can
also be declared in a function.
Syntax:
struct struct-type-name{
type name1: length;
type name2: length;
.
.
type nameN : length;
}variable_list;
Example:
#include <iostream.h>
struct Emp
{
int empno;
int empsal;
};
void main( )
{
Emp emp1= { 23, 12000};
cout << "Employee Number::" <<
emp1.empno << '\n';
cout << "Employee Salary:: "<< emp1.empsal;
}
|
Result:
Employee Number:: 23
Employee Salary:: 12000
In the above example, the structure "Emp" is used initialize the integers, that are referenced in the
"main()" function.
Unions:
Unions in C++ is a user defined data type that uses the same memory as other objects from a list of objects. At an instance it contains only a single object.
Syntax:
union union-type-name{
type member-name;
type member-name;
}union-variables;
Example:
#include <iostream.h>
union Emp
{
int num;
double sal;
};
int main()
{
Emp value;
value.num = 2;
cout << "Employee Number::" << value.num
<< "\nSalary is:: " << value.sal << endl;
value.sal = 2000.0;
cout << "Employee Number::" << value.num
<< "\nSalary is:: " << value.sal << endl;
return 0;
}
|
Result:
Employee number is::2
Salary is::2.122e-314
Employee number is::0
Salary is::2000
In the above example, only "value.num" is assigned, but still the "val.sal" gets a value
automatically, since the memory locations are same.
|