Aşağıdaki kod, yeni derleyicilerde yapılamadı (g ++ - 5.3, clang ++ - 3.7). clang tarafından döndürülenHarita araması için string_view öğesinin kullanımı
#include <map>
#include <functional>
#include <experimental/string_view>
void f()
{
using namespace std;
using namespace std::experimental;
map<string, int> m;
string s = "foo";
string_view sv(s);
m.find(sv);
}
Hata:
error: no matching member function for call to 'find'
m.find(sv);
~~^~~~
Ama find
karşılaştırılabilir türleri kullanmak gerekir?
template< class K > iterator find(const K& x);
aynı hata boost::string_ref
ile olur: Cppreference aşağıdaki aşırı bahseder.
Bu hile yaptı! –