When I try to create an object I get a LNK2001 error in Visual Studio, it\'s a problem with the constructor I think since changing the constructor changes the error.
What's there looks OK to me. Check other things, like make sure your namespaces are right, or there's not another/conflicting "Customer" definition, etc. Try commenting out large sections of code or reducing your code to a small test case.
I had the same error. It turned out that one necessary function was commented out. When I uncommented this function, the error disappeared.
I encountered exact same problem. This is how I fixed:
Use #include<string>
instead of #include "string.h"
in the file calling Customer
constructor.
If you have linking error then syntactically your code is OK otherwise you'll get compiler errors.
What you should check(or add) is path in Dependencies property of the project that uses Customer class. In VS you can find it "Project Properties->Configuration Properties->Linker->Input->Additional Dependencies". Seems that linker can't find the external library with Customer implementation. You can successfully compile your project cause all #include are correct but you fail on the stage of linking just because of dependencies.