son sirven que para palabras palabra las keywords español ejemplos definicion claves clave cientifico articulo c++ explicit-constructor

c++ - keywords - para que sirven las palabras claves



Si utilizo el constructor explícito, ¿debo poner la palabra clave en ambos archivos.h y.cpp? (2)

No, no es. La palabra clave explicit solo está permitida en el encabezado. Mi gcc dice:

test.cpp:6: error: only declarations of constructors can be ''explicit''

para el siguiente código:

class foo { public: explicit foo(int); }; explicit foo::foo(int) {}

En realidad, mi pregunta está en el título.
De todas formas:
Tengo una clase y uso un constructor explícito:
.h

class MyClass { public: explicit MyClass(const string& s): query(s) {} private: string query; }

¿Es obligatorio o no poner palabra clave explícita en el archivo de implementación (.cpp)?


Con respecto a la pregunta de seguimiento (que debería haber enviado como una pregunta separada), la lista de inicialización va con la implementación del constructor (su cuerpo de función), que puede estar en el encabezado o en el archivo cpp.