Why is std::string and std::vector not being passed to my constructor how I would expect? [duplicate]
Why is std::string and std::vector not being passed to my constructor how I would expect? [duplicate] This question already has an answer here: This is my error when trying to compile: Undefined symbols for architecture x86_64: "Model::Model(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::vector<int, std::__1::allocator<int> >)", referenced from: ____C_A_T_C_H____T_E_S_T____4() in tests.cpp.o I have read that std::string is a typedef of std::basic_string and I'm guess that std::vector is a typedef of... std::vector and std::allocator? or something... Anyway. I have a Settings class that holds my settings and a Model class that contains my model. The code I am attempting to run is as below, and I am unable to compile it. the issue is with it not recognising my model constructor. Settings s = Settings("../config/settings.json"); std::string mf = s.get_model_file(); std::vector<in...