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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
qwerty778
1 / 1 / 0
Регистрация: 09.01.2014
Сообщений: 56
#1

Ошибка линковки. Глобальные переменные - C++

19.02.2014, 16:52. Просмотров 362. Ответов 3
Метки нет (Все метки)

Здравствуйте, имеется многофайловый проект. Объявляю глобальные переменные с помощью extern. Линковщик жалуется на 2 ошибки: LNK2020 и LNK2001. MVS 2013.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2014, 16:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка линковки. Глобальные переменные (C++):

Глобальные переменные (ошибка) - C++
Разбирался в глобальных переменных, программа выдает ошибку... Что не так? #include <iostream> using namespace std; ...

Глобальные и статические глобальные переменные - C++
Скажите, чем отличаются глобальные переменные от статических глобальных переменных?

глобальные переменные - C++
здравствуйте, я только начал изучать C++, в книге Штидта Г. есть такой код, он выводит: count + число, помогите понять принцип работы этого...

глобальные переменные - C++
Пробовал объявить глобальные переменные следующим образом: в заголовочном файле head.h #ifndef DF_H #define DF_H //объявления...

Глобальные переменные - C++
Здравствуйте . Разбираю пример с книги на использование глобальных переменных . Там был такой пример: #include "stdafx.h" #include...

Глобальные переменные - C++
Как в C++ завести глобальную (общую для функции и самой программы) переменную?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Тамика
Котовчанин
870 / 450 / 143
Регистрация: 16.02.2010
Сообщений: 2,961
Записей в блоге: 27
19.02.2014, 16:53 #2
Цитата Сообщение от qwerty778 Посмотреть сообщение
Здравствуйте, имеется многофайловый проект. Объявляю глобальные переменные с помощью extern. Линковщик жалуется на 2 ошибки: LNK2020 и LNK2001. MVS 2013.
Библиотеки прилинкованы? Хедера включены?
DrOffset
7095 / 4236 / 950
Регистрация: 30.01.2014
Сообщений: 7,011
19.02.2014, 17:02 #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от qwerty778 Посмотреть сообщение
Здравствуйте, имеется многофайловый проект. Объявляю глобальные переменные с помощью extern. Линковщик жалуется на 2 ошибки: LNK2020 и LNK2001. MVS 2013.
extern - это обозначение уже объявленной переменной. Таковые имеются?

То есть если мы пишем:
C++
1
extern int a;
То в каком-то модуле должно быть и такое:
C++
1
int a = 1;
Где extern int a проще понимать его как обозначение «внешнего» имени для данного модуля.
ValeryS
Модератор
6556 / 5022 / 464
Регистрация: 14.02.2011
Сообщений: 16,763
19.02.2014, 17:08 #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
поддержу DrOffset,
я вообще глобальные объявляю так, чтобы не искать по модулям
файл global.c
C++
1
2
3
//global.c
int a;
int b;
файл global.h
C++
1
2
3
//global.h
extern int a;
extern int b;
потом просто в нужных мне модулях делаю
C++
1
#include "global.h"
преимущества все лежат в одном месте,легко править
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2014, 17:08
Привет! Вот еще темы с ответами:

Глобальные переменные - C++
Подскажите пожалуйста, почему данные в глобальной переменной перезаписываются, а не плюсуются? Пример: int peremennaya; void...

Глобальные переменные - C++
Я правильно понимаю: "в c++ использовать глобальные переменные не безопасно, т. к. др. программы могут случайно поменять значение этих...

Глобальные переменные - C++
Доброго времени суток всем. У меня следующая проблема: объявляю глобально переменную типа структуры dealer* root;. Далее в коде...

Глобальные переменные - C++
Я хочу использовать глобальную переменную, определённую в main, в своих классах. Листинг)) globals.h #ifndef GLOBASL_H #define...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.02.2014, 17:08
Ответ Создать тему
Опции темы

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