In the code below, class B has a member that is of type class A (varA1). I want to create a class B object where the member varA1 is intended to use the non-default constructor
You could use an initializer list in your B::B(int) constructor:
B::B(int v1) : varA1(v1) { cout << "B int constructor" << endl; var1 = v1; }