C++: will copy constructor and overload constructor be called simultaneously? [closed]


Assuming there is a class defined as:

class A: { public:    A(); // Default constructor        A(int m); // Overload constructor        A(const A& other); // Copy constructor }; 

I am wondering for the statement A b=A(5), which constructor will be applied?

Is A b=A(5) equivalent to A b(5)?

Already know that A a(5) calls the overload constructor only.

There are some books say overload constructor will be called first and then copy constructor. A(5) will create a temp object by calling overload constructor. Then the copy constructor for b will take the temp object as the argument.

I have tried some experiments in my local machine but getting overload constructor called only. Not sure if this issue depends on compiler.