hola
estoy programando en directx y he hecho una clase para hacer un pequeño wrapper (solo para aprender). el caso es que todo esta bien escrito, tanto la declaracion de la clase (que esta en su header correspondiente) como la definicion de las funciones de miembro (q estan en su correspondiente cpp). incluyo el cpp de la clase en el fuente principal y el header de la clase en el cpp de la clase. todo keda de manera q no se leen dos veces ni nada (aunq de todas formas he hecho un #ifndef, #define, #endif para asegurarme). el caso es que le doy a f5 y compila perfectamente pero al generar el codigo me da error. me dice esto:
error LNK2005: "public: __thiscall DXWrapper::DXWrapper(void)" (??0DXWrapper@@QAE@XZ) already defined in DXWrapper.obj
me da uno de esto por cada funcion de miembro que haya declarado y al final me dice:
fatal error LNK1169: one or more multiply defined symbols found
alguien sabe donde puede estar el problema??
gracias de antemano y un saludo!!
bueno, he "descubierto" algo. cuando kito del solution o proyecto (o como kerais llamarlo, yo uso vs .net por eso digo solution) el cpp de la clase (q tengo metido en sources) si me va. el include (logicamente) no lo kito, pero si lo kito del proyecto de esta manera me arranca, pero es mas incomodo.
si alguien conoce otra solucion mejor...
lo consegui xDDD
no se si sera la manera mas correcta, pero...
el caso es q al tenerlo agregado al proyecto me lo compila automaticamente, sin necesidad de que yo haga el include. entonces lo que he hecho es en el codigo principal, en vez de hacer el include hacia el cpp, lo he hecho hacia el header. entonces el cpp no esta incluido por nadie, lo compila automaticamente por el proyecto. ah, y en el cpp he incluido el header para que no me de errores (simbolos no definidos)
no se si se me entendera, pero... xDD
saludos!!
:jaja: "Post auto solucionador"
jejejejeje
Joer, pero es que los .cpp no se incluyen! :)
es q tengo poca experiencia en c++, todavia no la he cagado las suficientes veces como para enterarme
jejejeje
pero bueno, nunca te acostaras sin saber una cosa mas... ya en esto no me vuelvo a ekivokar :D
saludos!!!!!1