```
class first{
    int fa,fb;

    public:
        first();
        first(int x,int y);
        void display();
};

first::first():fa(0),fb(0){
       }

first::first(int x,int y):fa(x),fb(y){
}

void first::display(){
    cout<<fa<<" "<<fb;
}

class second{
    first f;
    int sa,sb;

    public:
        second();
        second(int x,int y,int a,int b);
        void display();
};

second::second():sa(0),sb(0){
}

second::second(int x,int y,int a,int b):f(x,y),sa(a),sb(b){
}

void second::display(){
    cout<<"The Numbers are ";
    f.display();
    cout<<" "<<sa<<" "<<sb<<endl;
}

```

I apologize if this question has been asked already.

This a simple code to demonstrate the working of nested classes in c++.
However, in the class `second`, the object `f` even though it has been defined before, I am able to call a constructor on it using the construtor of `second` class.
How is it possible to call a constructor on an already defined instance of a class?