Tenía el siguiente código C++, donde el argumento para mi constructor en la declaración tenía una constness diferente a la definición del constructor.Falta de coincidencia entre la definición del constructor y la declaración
//testClass.hpp
class testClass {
public:
testClass(const int *x);
};
//testClass.cpp
testClass::testClass(const int * const x) {}
que era capaz de compilar esta sin advertencias utilizando g ++, debe este código de compilación o al menos dar algunas advertencias? Resulta que el compilador C++ incorporado en los Solaris de 64 bits me dio un error de enlazador, que es como noté que había un problema.
¿Cuál es la regla sobre los argumentos coincidentes en este caso? ¿Depende de los compiladores?
Indique la referencia al Estándar. –
He escrito sobre esto aquí, si necesita más ejemplos: http://stackoverflow.com/questions/269882/c-const-question/274888#274888 –
@ onebyone.livejournal.com: Gracias. –