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

не видит тела функции в .cpp файле. Использую namespace - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ двумерные массивы, циклический сдвиг столбцов http://www.cyberforum.ru/cpp-beginners/thread839315.html
Доброго времени суток уважаемые форумчане, помогите пожалуйста сдвиг столбцов влево переделать на сдвиг вправо. #include <stdio.h> #include <stdlib.h> int main() { const int N = 100, M = 50, MAX_VALUE = 100; int i, j, k, replaced; int A, B;
C++ Написать функцию которая имеет на входе два числа с плавающей точкой типа float Привет всем. Вот мне такую задачу надо решить: написать функцию которая имеет на входе два числа с плавающей точкой типа float, но представленные как long int unsigned и выдает результат типа float сумма или разность - третий операнд. Даже представления не имею как и с чего начать даже алгоритм не могу составить! помогите пожалуйста! Заранее спасибо! http://www.cyberforum.ru/cpp-beginners/thread839314.html
написать код с++ для нахождения вероятностей ошибок с использованием характеристических функций для 1го и 2го класса C++
Даны две идентичные характеристические функции для нахождения ошибки. 1. ( 1/sqrt(1-j*w*a) ) * exp ; 2. ( 1/sqrt(1-j*w*aa) ) * exp ; a,b,h находятся в программе ранее. надо код для вычисления вероятностей ошибок
Вставить в массив элемент C++
Вставить в массив число 10 после m-го элемента
C++ Что означает this в классах? http://www.cyberforum.ru/cpp-beginners/thread839274.html
Что означает this в классах? Например: void ostream::put(char *p) { while(*p) this->put(*p++); }
C++ Электронный калейдоскоп на С++ Доброго времени суток! Ребята, такой вопрос: такое вообще реально реализовать на С++? Калейдоскоп представляет собой правильный шестиугольник, разделенный на шесть правильных треугольников. С помощью датчика случайных чисел один из треугольников рассекается несколькими прямыми. Каждая из полученных частей треугольника закрашивается цветом, выбранным случайным образом. После этого изображения... подробнее

Показать сообщение отдельно
Deimon
35 / 35 / 2
Регистрация: 29.08.2009
Сообщений: 178

не видит тела функции в .cpp файле. Использую namespace - C++

16.04.2013, 12:25. Просмотров 306. Ответов 0
Метки (Все метки)

Решил на всякий случай использовать namespace в своей программе, но столкнулся с тем, что не понимаю как описать в одном файле объявления методов, а в другом тела (как в классах). Либо у меня где-то ошибка, которая объявилась только сейчас. Подскажите пожалуйста, как правильно использовать namespace, и можно ли описывать методы в двух разных местах.

Вот что происходит:
есть юнит resource с объявленным namescape MainFunctions и функцией RollValue(..)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//resource.h файл
#ifndef resourceH
#define resourceH
 
#include <vcl.h>
#include <stdio.h>
#include <stdlib.h>
#include <list>
 
#define GTB Graphics::TBitmap
HANDLE DataDLL = LoadLibrary("Data.dll");
 
namespace MainFunctions
{
  int Summ(int a, int b) {return a+b; }
  bool RollPercent(short perc0to100);
  int RollValue(int min, int max);
}
 
#endif
в cpp этого юнита находится тело этой функции.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//resource.cpp файл
#pragma hdrstop
#include "resource.h"
 
bool MainFunctions::RollPercent(short perc) {
  randomize();
  if (perc >rand()%100) return true; else return false;
}
 
int MainFunctions::RollValue(int min, int max) {
  int val= max-min;
  int summ=0;
  while (val>32767)  
  {
    randomize();
    summ= summ + rand()%32767;
    val= val - 32767;
  }
  randomize();
  summ= summ + rand()%val + min;
  return summ;
}
 
#pragma package(smart_init)
Этот юнит подключен в хэдере main юнита.
PHP
1
2
3
4
//main.h
...
#inlude "resource.h"
....
и используется в исполняемом файле, где и возникает ошибка
C++
1
2
//main.cpp
int val = MainFunctions::RollValue(-1000000,10000000);
выхлоп компилятора выдает ошибку [ILINK32 Error] Error: Unresolved external 'MainFunctions::RollValue(int, int)' referenced from "путь к мэйн юниту.OBJ"

Что я делаю не так?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru