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

Множественные переопределения сбивающие компилятор столку - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Линейный однонаправленный список http://www.cyberforum.ru/cpp-beginners/thread1112241.html
Добрый вечер! Задача: L – линейный однонаправленный список Проверить, упорядочены ли элементы списка по алфавиту. Подскажите как сделать список классом? (без использования структур)
C++ Вертикальный скролл Здравствуйте! Не могу разобраться с вертикальным скроллом. Скиньте, пожалуйста, пример с рабочим вертикальным(ли горизонтальным) скроллом. (желательно WinAPI). http://www.cyberforum.ru/cpp-beginners/thread1112231.html
C++ Нужно написать рекурсивную функцию, которая определит - является ли симметричной часть строки от n, до z
Нужно написать рекурсивную функцию, которая определит - является ли симметричной часть строки от n, до z. Выдает ошибку: #include <iostream> bool simetrija(int start, int end, int *p); using...
C++ Есть ли ошибки
В чем ошибка ? Все ли я правильно сделал? #include <new> #include <cstring> #include <iostream> using namespace std; // начало объявления класса enum color {red, gren, blue}; class monstr...
C++ Вывести русский текст http://www.cyberforum.ru/cpp-beginners/thread1112197.html
Помогите пожалуйста, как вывести в консоль не просто русский текст, а именно вывести текст из переменной?
C++ VS 12 ограничение на создание потоков Использую реализацию OpenMP для распараллеливания вычислений. Почему то больше 64 потоков не создает. 2х ядерный процессор, 3гб оперативки, но ни в какую не хочет создавать 100,200,300 потоков?... подробнее

Показать сообщение отдельно
DrOffset
7316 / 4416 / 1000
Регистрация: 30.01.2014
Сообщений: 7,253
05.03.2014, 21:41
Xipxop, у тебя глобальные переменные остались с внешним связыванием:
global_vars
local_var_stack
func_table
table
intern_func

решение - убрать в один из cpp, в h-файле объявить как extern. Должно работать

Добавлено через 6 минут
Цитата Сообщение от Xipxop Посмотреть сообщение
Другие компиляторы жаловались на бредовые ошибки, типа переменые структур объявлены много раз во всех cpp файлах...(хотя объявлены 1 раз в stucturs.h)
Это не бредовые ошибки. Это происходит из-за принципа раздельной компиляции в С++ (каждый файл компилируется независимо).

Процитирую сам себя:
Цитата Сообщение от DrOffset Посмотреть сообщение
Вот есть у тебя файл А, ты подключаешь туда через include файл B. Это значит, что все содержимое файла B становится частью файла А.
Теперь есть у тебя файл С и ты подключаешь туда опять же файл B. Происходит тоже самое.
Теперь, после этого ты получил два файла, которое абсолютно полностью содержат в себе содержимое файла B (в нашем случае - переменную). т.к. для функций и глобальных переменных в С++ по умолчанию используется внешнее связывание, то линковщик, видя две одинаковые функции или переменные, ругается на дубликат.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru