Para solucionarlo, es conveniente utilizar una función hash que devuelva un valor único para cada fila (hash).
C++11 tiene una función integrada para obtener un hash: hash. < br />
En el futuro, para contar el número de hashes, es mejor usar la tabla hash unordered_map, que también apareció en C++ 11. Puede obtener más información sobre el uso de mapas en el curso Estructuras de datos dinámicas -> Matrices asociativas: map.
Un ejemplo de cómo obtener un hash de la cadena "prueba":
hash<string> hash_fn;
size_t str_hash = hash_fn("prueba" );
cout<<str_hash;
El resultado será: "2949673445", por lo que de cada cadena única puede obtener un hash único que se puede usar como clave en el unordered_map.