Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Объединение двух map - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ указатели (int, long). http://www.cyberforum.ru/cpp-beginners/thread426135.html
подскажите как выбрать данные из памяти с помощью разных типов указателей (int, long).
C++ Обозначение строки Здравствуйте! Можете пожалуйста перевести что это строка обозначает: putf = static_cast<char>(0xC0 | (uch >> 6)); Заранее благодарен! http://www.cyberforum.ru/cpp-beginners/thread426126.html
C++ Описать класс «Многоугольник»
Описать класс «Многоугольник», имеющий закрытые атрибуты для хранения информации о количестве вершин и длине стороны, а также общедоступные конструктор, деструктор и методы для установки и считывания...
C++ Преобразование 3-х мерного массива в одномерный
Написать формулу для преобразования 3х индексов 3х мерного массива в 1 индекс одномерного, как зная адрес первого элемента массива и индекс одномерного Вычислить адрес элемента в 3х мерном массиве!
C++ Лексикографический порядок http://www.cyberforum.ru/cpp-beginners/thread426106.html
в задаче попалась фраза : отсортировать массив в порядке лексографического возрастания не совсемм понимаю как мне надо сравнивать,что больше : 123 и 999 1230 и 999 1234 и 999 1234 и 9990 4321...
C++ Упражнение из книги. В книге (Язык программирования С++. Вводный курс. 4-е изд. (Стенли Липпман)) есть задание: "Напишите программу, читающую строки в вектор. Скопируйте этот вектор в массив указателей на тип char. Для... подробнее

Показать сообщение отдельно
rus_phantom
6 / 6 / 1
Регистрация: 31.03.2011
Сообщений: 69
11.01.2012, 14:28  [ТС]
А можно пример? Попытался сделать так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
int _tmain(int argc, _TCHAR* argv[])
{
    
    map<string,string> m1;
    map<string,string> m2;
    map<string,string> m3;
    
    string s11("s11");
    string s12("s12");
    string s21("s21");
    string s22("s22");
    m1[s11]=s12;
    m1[s21]=s22;
    map<string,string>::iterator first1=m1.begin();
    map<string,string>::iterator last1=m1.end();
    map<string,string>::iterator first2=m2.begin();
    map<string,string>::iterator last2=m2.end();
 
    merge(first1,last1,first2,last2,m3.begin());
 
    for (first1=m3.begin();first1!=m3.end();++first1) {
        cout <<first1->first<<":"<<first1->second<<endl;
    }
 
    //ini f("1.ltx");
    //f.debug_print();
 
    getchar();
    return 0;
}
И получаю ошибку:
Ошибка

c:\mvs\vc\include\utility(260): error C2678: бинарный "=": не найден оператор, принимающий левый операнд типа "const std::string" (или приемлемое преобразование отсутствует)
1> c:\mvs\vc\include\xstring(707): может быть "std::basic_string<_Elem,_Traits,_Ax> &std::basic_string<_Elem,_Traits,_Ax>::operator =(std::basic_string<_Elem,_Traits,_Ax> &&)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>,
1> _Ax=std::allocator<char>
1> ]
1> c:\mvs\vc\include\xstring(762): или "std::basic_string<_Elem,_Traits,_Ax> &std::basic_string<_Elem,_Traits,_Ax>::operator =(const std::basic_string<_Elem,_Traits,_Ax> &)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>,
1> _Ax=std::allocator<char>
1> ]
1> c:\mvs\vc\include\xstring(767): или "std::basic_string<_Elem,_Traits,_Ax> &std::basic_string<_Elem,_Traits,_Ax>::operator =(const _Elem *)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>,
1> _Ax=std::allocator<char>
1> ]
1> c:\mvs\vc\include\xstring(772): или "std::basic_string<_Elem,_Traits,_Ax> &std::basic_string<_Elem,_Traits,_Ax>::operator =(_Elem)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>,
1> _Ax=std::allocator<char>
1> ]
1> при попытке сопоставить список аргументов "(const std::string, const std::basic_string<_Elem,_Traits,_Ax>)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>,
1> _Ax=std::allocator<char>
1> ]
1> c:\mvs\vc\include\utility(259): при компиляции функции-члена "std:air<_Ty1,_Ty2> &std:air<_Ty1,_Ty2>::operator =(std:air<_Ty1,_Ty2> &&)" класса шаблон
1> with
1> [
1> _Ty1=const std::string,
1> _Ty2=std::string
1> ]
1> c:\users\призрак\documents\visual studio 2010\projects\rpg\rpg\rpg.cpp(25): см. ссылку на создание экземпляров класса шаблон при компиляции "std:air<_Ty1,_Ty2>"
1> with
1> [
1> _Ty1=const std::string,
1> _Ty2=std::string
1> ]
1>
1>СБОЙ построения.
1>
1>Затраченное время: 00:00:01.35
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru