いつもありがとうございます!!!
今回はmapを使ってみました。
keyにchar16_tを使いたいのですが、、
data[u"あ"] = c[0];
auto itr = data.find(u"あ");
でエラーが。
operator< がないとだめってのはちょっと見ました。
わかる方教えてくれたら助かります!!
struct Vertex { float x; float y; float z; float w; } c[65536]; void main() { std::map <char16_t, Vertex> data; data[u"あ"] = c[0]; auto itr = data.find(u"あ"); if (itr != data.end()) { std::cout << "" << std::endl; } else { std::cout << "" << std::endl; } std::cin.get(); }
#####error
E0349 これらのオペランドと一致する演算子 "[]" はありません E0304 オーバーロードされた関数 "std::map<_Kty, _Ty, _Pr, _Alloc>::find [代入_Kty=const char16_t, _Ty=Vertex, _Pr=std::less<const char16_t>, _Alloc=std::allocator<std::pair<const char16_t, Vertex>>]" のインスタンスが引数リストと一致しません E0304 オーバーロードされた関数 "std::map<_Kty, _Ty, _Pr, _Alloc>::find [代入_Kty=const char16_t, _Ty=Vertex, _Pr=std::less<const char16_t>, _Alloc=std::allocator<std::pair<const char16_t, Vertex>>]" のインスタンスが引数リストと一致しません C2664 'std::_Tree_const_iterator<std::_Tree_val<std::_Tree_simple_types<_Ty>>> std::_Tree<std::_Tmap_traits<_Kty,Vertex,_Pr,_Alloc,false>>::find(const char16_t &) const': 引数 1 を 'const char16_t [2]' から 'const char16_t &' へ変換できません。 C3536 'itr': 初期化前に使用することはできません C2678 二項演算子 '!=': 型 'int' の左オペランドを扱う演算子が見つかりません (または変換できません) (新しい動作; ヘルプを参照)。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/27 06:42