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

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

Войти
Регистрация
Восстановить пароль
 
HenryDukart
122 / 122 / 35
Регистрация: 05.10.2013
Сообщений: 455
Завершенные тесты: 2
#1

Определение переменных в пространстве имен в разных фалах - C++

11.12.2015, 00:13. Просмотров 127. Ответов 0
Метки нет (Все метки)

Здравствуйте, никак не могу решить проблему. Есть два файлы:

C++
1
2
3
4
5
6
7
8
9
10
11
//main.cpp
#include <iostream>
#include "IgorFunctions.h"
using namespace Igor;
using namespace std;
 
int main()
{
    cout << f(1) << endl;
    return 0;
}
C++
1
2
3
4
5
6
7
//IgorFunctions.h
#pragma once
namespace Igor
{
    int a = 1;
    int f(int x);
}
C++
1
2
3
4
5
6
7
8
//IgorFunctions.cpp
#include "IgorFunctions.h"
 
extern int Igor::a;
int Igor::f(int x)
{
    return x+a;
}
Пример искусственный. Проблема в том, что линковщик ругается на то, что "a" уже определена. Помогите, пожалуйста, разобраться.

Добавлено через 33 минуты
Вопрос решен.

C++
1
2
3
4
5
6
7
//IgorFunctions.h
#pragma once
namespace Igor
{
    extern int a;;
    int f(int x);
}
C++
1
2
3
4
5
6
7
8
//IgorFunctions.cpp
#include "IgorFunctions.h"
 
int Igor::a=1;
int Igor::f(int x)
{
    return x+a;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2015, 00:13     Определение переменных в пространстве имен в разных фалах
Посмотрите здесь:

friend функция в пространстве имен C++
C++ Ошибка повторения имен переменных при использовании глобальной переменной
C++ Изменение имен переменных в зависимости от шага цикла
"Автозаполнение" имен типов/функций/переменных C++
C++ русские символы в качестве имен переменных
C++ Сравнение переменных разных типов
C++ Использование имен предопределенных объектов в качестве имен переменных
C++ Адреса двух разных переменных одинаковы
Определение переменных в заголовочных файлах C++
Определение глобальных переменных C++
C++ Различное определение переменных
C++ Функция в классе, находившемся в пространстве имен

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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