0
Ich bin kürzlich über einen expliziten Konstruktor gestolpert, der ein einzelnes Zeigerargument empfängt. Ich frage mich, ob das explizite Schlüsselwort in diesem Fall notwendig ist? Da es für einen Zeiger keinen Konstruktor gibt, kann es keine implizite Konvertierung geben.C++ expliziter Konstruktor, der einen Zeiger nimmt
class Foo {
public:
explicit Foo(int* int_ptr);
}
Warum wäre ein Zeiger anders als alle anderen Konstruktorparameter? – juanchopanza
Ob "explizit" notwendig ist, ist eine andere Sache und hat nichts damit zu tun, dass der Parameter ein Zeiger ist. Es hängt davon ab, welche impliziten Conversions Sie zulassen möchten. – juanchopanza