creating object of another class when initializing an object of a class
You don't need to "create" anything. Just have an object in your class:

class Tone {
    public:
        void dosomething() {
            // Whatever is in here
        }
};

class MyMotor {
    public:
        Tone tone;
        void init() {
            // Nothing much else to do in here now.
        }
};


You then:

MyMotor newmotor1;


And you can access:

newmotor1.tone.dosomething();