In C++, under the case `T object( other);`, it is direct initialization or copy initialization?

Assume I have this code T object(other); It is direct initialization or copy initialization? Based on the rule of direct initialization : T object ( arg ); initialization with a nonempty parenthesized list of expressions It is direct initialization. But I saw someone said: It is copy initialization when object and other is same type.… Read More In C++, under the case `T object( other);`, it is direct initialization or copy initialization?