Obtengo un error de compilación cuando intento alinear un método de una de mis clases. Funciona cuando elimino la palabra clave "en línea".C++ métodos de clase entrante causa referencia indefinida
Aquí está un ejemplo simplificado:
main.cpp:
#include "my_class.h"
int main() {
MyClass c;
c.TestMethod();
return 0;
}
my_class.h:
class MyClass {
public:
void TestMethod();
};
my_class.cpp:
#include "my_class.h"
inline void MyClass::TestMethod() {
}
Intento compilar con:
g++ main.cpp my_class.cpp
me sale el error:
main.cpp:(.text+0xd): undefined reference to `MyClass::TestMethod()'
Todo está bien si yo quite la "línea". ¿Qué está causando este problema? (y ¿cómo debo incluir los métodos de clase? ¿Es posible?)
Gracias.
El enlace lleva a la página con el error 'No tienes permiso para acceder al archivo solicitado en este servidor'. –