Standardkonstruktor c ++
Ich versuche zu verstehen, wie der Standardkonstruktor (vom Compiler bereitgestellt, wenn Sie keinen schreiben) im Vergleich zu Ihrem eigenen Standardkonstruktor funktioniert.
So habe ich zum Beispiel diese einfache Klasse geschrieben:
class A
{
private:
int x;
public:
A() { std::cout << "Default constructor called for A\n"; }
A(int x)
{
std::cout << "Argument constructor called for A\n";
this->x = x;
}
};
int main (int argc, char const *argv[])
{
A m;
A p(0);
A n();
return 0;
}
Die Ausgabe ist:
Standardkonstruktor für A aufgerufen
Argumentkonstruktor für A aufgerufen
Für den letzten gibt es also einen anderen Konstruktor, und meine Frage ist, welcher und welcher Typ n in diesem Fall hat.