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

Невозможно поместить строку map<string,float>pairs_map; в .h-файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строковый ввод-вывод. С++ http://www.cyberforum.ru/cpp-beginners/thread37316.html
У меня возникла проблема с заданием. Создать текстовый файл F1 не менее, чем из 10 строк и записать в него информацию 1) Скопировать из файла F1 в файл F2 все строки, которые содержат только...
C++ Переход по ссылке Люди кто знает как в программу добавить переход по ссылке html напимер нажимаеш на button и переходит к конкретной ссылке ;) http://www.cyberforum.ru/cpp-beginners/thread37298.html
Метод Зейделя C++
Ребята, каждый из вас уже делал лабы по матрицам. Если у кого-то есть готовая лаба по методу Зейделя, прошу, напишите ее тут и желательно с комментариями. >>Тут<< можно почитать о методе Зейделя...
C++ Объявление шаблона ассоциативного массива map
Необходимо объявить шаблон map таким образом,чтобы в map записывалось второе значение согласно шаблону.Например,у нас пары значений string-int,string-double.Как можно объявить шаблон на такой массив?...
C++ Приоритет операторов (расставить скобки) http://www.cyberforum.ru/cpp-beginners/thread37276.html
Необходимо расставить скобки в следующем выражении: a==b||a==c&&c<5Объясните расстановку. Я думаю,что сначала вычислится c<5(по приоритету),потом a==b,потом ,если true,a==c,(по приоритету...
C++ Разница циклов for и while Перепишите следующий пример с инструкцией for в виде эквивалентного кода с использованием инструкции while:for (i=0;i<max_length;i++) if (input_line=='?') guest_count++;Перепишите так,чтобы... подробнее

Показать сообщение отдельно
#pragma
Временно недоступен
952 / 223 / 6
Регистрация: 12.04.2009
Сообщений: 921

Невозможно поместить строку map<string,float>pairs_map; в .h-файл - C++

30.05.2009, 14:27. Просмотров 637. Ответов 7
Метки (Все метки)

Делаю проект,есть 3 файла :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// project_header.h
#ifndef PROJECT_HEADER_H_INCLUDED
#define PROJECT_HEADER_H_INCLUDED
 
#include <iostream>
#include <map>
#include <iterator>
#include <string>
#include <cctype>
 
using namespace std;
 
map<string,float>pairs_map;
void map_filler(map<string,float>&m);
 
 
#endif // PROJECT_HEADER_H_INCLUDED
C++
1
2
3
4
5
6
7
8
// 6.6.3.cpp
#include "project_header.h"
 
 
void map_filler(map<string,float>&m)
{
  // ...
}
C++
1
2
3
4
5
6
7
// main.cpp
#include "project_header.h"
 
int main()
{
    // ...
}
Этот проект не компилируется,в чём дело?Ошибка:

obj/Debug/main.o||In function `main':|
/media/Part2/C++/Projects/CodeBlocks/6.6/main.cpp|3|multiple definition of `pairs_map'|
obj/Debug/6.6.3.o:/media/Part2/C++/Projects/CodeBlocks/6.6/6.6.3.cpp|5|first defined here|
||=== Build finished: 2 errors, 0 warnings ===|


Если поместить объявление в main функцию,то всё работает.Может,это определение,которое не может быть в заголовочном файле?В чём тут ошибка?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru