クラス String があるとします。
class String {
public:
String (int n);
String(const char *p);
}
試してみるとどうなりますか:
String mystring='x';
ここでは、char 'x' を int に変換して String(int) コンストラクターを呼び出すと書かれています。しかし、私はそれを理解していません。
まず、「x」を int に変換する方法を教えてください。"3"
が変換されることは想像できます3
が、「x」は何に変換されるのでしょうか? 次に、クラスに 2 つのコンストラクターがあります。最初のコンストラクターは int 型の引数を 1 つ取り、別のコンストラクターは char 変数へのポインターを引数として取ります。ここで、char を引数として取る、存在しないコンストラクターを呼び出そうとします。では、char を整数に変換しますが、char を char へのポインターに変換してから 2 番目のコンストラクターを使用しないのはなぜでしょうか?