File.h:
std::map<winrt::hstring, winrt::hstring> someMap;
File. cpp
auto it = someMap.find(someKey);
if (it != someMap.end()) {
it.second += (winrt::hstring{L", "} + someString.c_str());
}
Я получаю следующую ошибку:
'second': is not a member of 'std::_Tree_iterator<std::_Tree_val<std::_Tree_simple_types<_Ty>>>'
with
[
_Ty=std::pair<winrt::hstring,winrt::hstring>
]
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\include\xtree(778): note: see declaration of 'std::_Tree_iterator<std::_Tree_val<std::_Tree_simple_types<_Ty>>>'
with
[
_Ty=std::pair<winrt::hstring,winrt::hstring>
]
Я знаю из здесь , что нужно включить заголовки каждого пространства имен, которое мы используем. Я предполагаю, что эта ошибка оттуда, и, возможно, поэтому Visual Studio не может разрешить поиск из std :: map и вместо этого сопоставляется с поиском из xtree.h. Но могу ошибаться. Я попытался включить std в качестве пространства имен, но это не работает или, по крайней мере, мне может понадобиться что-то в дополнение к этому. Какие заголовки и / или пространства имен я должен включить для устранения этой ошибки.