Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > .NET для новичков > Создание Map |
Автор: Bison 13.1.2011, 10:37 |
Как можно создать Map с типом ключ-значение: System::String __gc* и сделать вставку. Я пытался сделать так: //объявление структур глобальными: map<System::String __gc *, System::String __gc *> RepMap; pair<System::String __gc *, System::String __gc *> Pair_Type //затем в функции делаю следующее String *Pattern, *Replacer; // затем инициализирую эти переменные ... Pair_Type.first = Pattern; Pair_Type.second = Replacer; RepMap.insert(Pair_Type); Но, компиляции ругается и выводит ошибку С3265: cannot declare a managed 'first' in unmanaged 'std::pair<_Ty1, _Ty2>' (\include\utility(61)) Не могу понять в чём проблема, прошу помогите советом. |
Автор: Bestoloch 13.1.2011, 11:08 |
Вы веткой не ошиблись? |
Автор: PELIKANN 13.1.2011, 18:59 |
в System.Collections.Generic если я не ошибаюсь есть аналог stl-евского mapа под названием Dictionary.. Может лучше использовать его? |
Автор: cream 13.1.2011, 19:15 |
Работайте либо с managed - managed, либо unmanaged - unmanaged кодом. std::pair - unmanaged, __gc - managed. И еще можно такой нескромный вопрос, - в какой среде работаете? |