Различия между строкой C ++ == и сравнением ()?
Я просто прочитал некоторые рекомендации по использованию
std::string s = get_string();
std::string t = another_string();
if( !s.compare(t) )
{
вместо
if( s == t )
{
Я почти всегда использую последний, потому что привык к нему, и он кажется естественным, более читабельным. Я даже не знал, что была отдельная функция сравнения. Чтобы быть более точным, я думал, что == вызовет Compare ().
Какие есть отличия? В каком контексте один путь следует отдавать предпочтение другому?
Я рассматриваю только те случаи, когда мне нужно знать, совпадает ли строка с другой строкой.