I've got a struct which is declared as having two fields:
When I use this in a vector, I can use the  notation to initialise the position int OK and can then check this with a cout command, but when I do the same with the array it compiles OK but I can't get it to print the contents onscreen.
The initialisation code fragments are:
cout << Row1.position; // this works ok
cout << Row1.tile_id; this won't work
Change the type of tile_id to std::string (remember to #include as well). std::string defines an overloaded version of operator=. Therefore, the second assignmnet will work as expected. Alternatively, if you prefer to retain the type of tile_id as an array of six chars, use the standard C function strcpy() instead of the assignment operator: