Initialize inner object using initialization syntax : class combination « Class « C++ Tutorial






#include <iostream>  
using namespace std;  
  
class IntPair {  
public:  
  int a;  
  int b;  
  
  IntPair(int i, int j) : a(i), b(j) { }  
};  
  
class MyClass {  
  IntPair nums;
public:  
   
  MyClass(int x, int y) : nums(x,y) { }  
  
  int getNumA() { return nums.a; }  
  int getNumB() { return nums.b; }  
};  
  
int main()  
{  
  MyClass ob1(7, 9), ob2(5, 2);  
  
  cout << "Values in ob1 are " << ob1.getNumB() << 
          " and " << ob1.getNumA() << endl;  
  
  cout << "Values in ob2 are " << ob2.getNumB() << 
          " and " << ob2.getNumA() << endl; 
   
  return 0;  
}
Values in ob1 are 9 and 7
Values in ob2 are 2 and 5








9.15.class combination
9.15.1.Use class as a member field
9.15.2.Initialize inner object using initialization syntax
9.15.3.Demonstrating composition--an object with member objects