Предположим, что у меня есть std::map<std::string, int>
. std::string
можно сравнить с строками C (const char *) без std::string
временных рядов. Тем не менее, map::find()
, похоже, заставляет меня создать временный std::string
, который, вероятно, требует выделения памяти. Как мне избежать этого? Концептуально это легко, но STL, похоже, предотвращает это.
#include <map>
int main()
{
std::map<std::string, int> m;
m.find("Olaf");
}