I never had these kind of problems. Perhaps my example has something small but significantly different than yours.

Also, my implementation of the classes are in the same cpp.

I compiled mine only with VS 2005. What compiler do you use?

Maybe you can create a small example that reproduces your problem.

Regards