The vector<,string>, would hold the names of the items they’re carrying, and the int would keep a tally of how many they have. Here I’m trying to create a function that adds an item called a Nanidoc to the inventory vector called Items and increment the counter for it in the map. Error 1 error C2679: binary ‘<,<,’ : no operator found which takes a right-hand operand of type ‘const std::vector<,_Ty>,’ (or there is no acceptable conversion) Error 2 error C2664: ‘std::map<,_Kty,_Ty>,::map(const std::map<,_Kty,_Ty>, &)’ : cannot convert parameter 1 from ‘std::vector<,_Ty>,’ to ‘const std::map<,_Kty,_Ty>, &’ Two big ‘Thanks’ for posting your code with tags, and describing your problem, very much appreciated. (I am also a gamer, so I know a little bit about the purpose of your code). is most likely the culprit. Why? Its the only line where you are attempting to to use the operator<,<, to output the items. , its not a string, but a reference to an iterator. The compiler cannot locate a compatible operator<,<, to go with that type. C++ is very good at preventing bad casting and conversions. The idea that I’m trying to achieve is a function that takes a number as a parameter, and increases the string in the vector by that number. How can I get the map to realize that it has seen the same word before, and increment the associated value? Am I better off just writing a different structure to hold a string and an int? Or should I write a more general function that takes the string as a parameter as well so it could work with multiple items? So your problem was that by pushing the string ‘Nanidoc’ into the vector each time you were changing the vector. So the first time you ran the program a *COPY* of Items was added to the map, the second time Items did not equal the OLD ITEMS — so a NEW *COPY* of items was inserted into the map. function to take a string argument as well as an integer, we can pass in a string that matches an already created vector: I’m starting to wonder though if I wouldn’t be better off just creating my own structure called <,Items>, that contains a string and an int… then I could create a vector<,Items>, that contains everything the player carries and would allow insertion and deletion. Perhaps that would be simpler than all this struggling with maps? Your example was pretty much exactly what I was envisioning in my head, I just couldn’t figure out what I needed to make it happen! Just commenting your example has taught me a lot about how I need to approach programs in terms of breaking them down into concrete solutions to related problems. Thank you to everyone else who suggested ways to tackle the problem. I’m learning that C++ is an incredibly versatile language, to have so many angles to approach things from. ‘ forum and there are blogs, and if you create interesting and useful bits of code there is the snippets section, and if you feel that someone could learn from some aspect of your experience you might think about writing a tutorial. Source.