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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ LNK4210 & extern "C" http://www.cyberforum.ru/cpp-beginners/thread1609313.html
Добрый вечер. Вопрос находится между АСМ и С/С++. На С написана ".lib", её содержание: #include <iostream> extern "C" { bool isSameLines(char* firstLine, char* secondLine){ return...
C++ Найти причины и способы исправления ошибок в коде Приложил фото ошибки, не считает часовые пояса. Объясните, что не так. # include <iostream.h> # include <conio.h> # include <string.h> # include <math.h> class user_time { protected: ... http://www.cyberforum.ru/cpp-beginners/thread1609299.html
Определить угол между заданными векторами по формуле и вычислить скалярное произведение этих векторов C++
Заданы два вектора х = (x1, x2, x3, x4), y = (y1, y2, y3, y4). Определить угол a между векторами x и y по формуле Вычисление скалярного произведения оформить в виде процедуры. \alpha = \arccos...
Бинарный поиск элемента в массиве C++
Суть - программа ищет число по формуле K=(a+b)/2 бинарным поиском, и выводит его порядковый номер (индекс) в отсортированом массиве. Проблема заключается в том что программа считает число по...
C++ Ошибки "taking address of temporary" http://www.cyberforum.ru/cpp-beginners/thread1609274.html
Добрый день! Подскажите, собираю уже готовый рабочий проект, но мне qt выдаёт ошибки: C:\Qt_programmes\laba5\mainwindow.cpp:134: ошибка: taking address of temporary res =...
C++ Написать программу умножения квадраной матрицы на вектор Дана квадратная матрица А размером n*n и вектор а = (a1, a2, ..., an). Написать программу вычисления вектора b = A*a. Добавлено через 14 часов 46 минут up! подробнее

Показать сообщение отдельно
HenryDukart
123 / 123 / 35
Регистрация: 05.10.2013
Сообщений: 457
Завершенные тесты: 2

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

11.12.2015, 00:13. Просмотров 136. Ответов 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;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru