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

Хранение прототипов методов класса и их непосредственной реализации в различных файлах - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дружественные функции http://www.cyberforum.ru/cpp-beginners/thread813272.html
С дружественными классами разобрался, спасибо. А теперь ф-ции. Киньте пожалуста простой пример: класс(несколько полей), обьект описаный в мейне, и функция, которая использует некое поле созданого обьекта.
C++ Решение задачи с массивам. Реализовать алгоритм, который будет считать количество в массиве разных букв Есть массив из 50 элементов из случайных букв малого и большого регистров. Реализовать алгоритм, который будет считать количество в массиве разных букв. (Регистры не принимаются во внимание) http://www.cyberforum.ru/cpp-beginners/thread813264.html
C++ исправте код
Исправте код, плиз, по классам. #include <iostream> #include <string.h> #include <windows.h> using namespace std; class day_in_year{ private: int diy_day, diy_month;
Установка FLTK и работа с ней в Code::Blocks C++
В одном из постов моей прошлой темы прозвучали слова об использовании FLTK "для старта в кнопочкоделании", и я решил прислушаться к этому совету. Но застрял в самом начале. С горем пополам установил/скомпилировал/собрал FLTK (как сей секас называется правильно я не знаю точно, но думаю понятно, что я имел в виду). Работаю я в Code::Blocks и решил прикрутить FLTK к нему и казалось бы всё...
C++ Дружественные классы http://www.cyberforum.ru/cpp-beginners/thread813246.html
Есть два класса. первый - основной, в нем все нужные поля. второй, в нем должен быть некий метот который должен использовать поле основного класса. как ето сделать? если можно наведите простой пример с описанием двух класов(первый - поля, второй - метод), и созданием обьекта первого класса, и вызовом метода второго класса для созданого обьекта(както так).
C++ Переставить первый и последний элемент массива Доброго времени суток. Хочу переставить первый и последний элемент массива. Но что-то я неправильно делаю. #include <iostream> #include <conio> int main() { int a, i; a=0; const int N=5; int mas={1,2,3,4,5}; подробнее

Показать сообщение отдельно
Черный ворон
129 / 123 / 6
Регистрация: 31.01.2012
Сообщений: 435

Хранение прототипов методов класса и их непосредственной реализации в различных файлах - C++

20.03.2013, 00:08. Просмотров 492. Ответов 1
Метки (Все метки)

вот собственно решил перейти на тот этап, когда прототипы в *.h а определения в *.cpp но почти сразу столкнулся со странной ошибкой в элементарном примере:

C++
1
2
3
4
5
6
7
8
9
10
11
12
//point.hpp
class Point{
private:
        int x;
        int y;
public:
        Point();
        Point(int a, int b);
        ~Point();
        int sum();
        double sum2();
};
C++
1
2
3
4
5
6
7
//point.cpp
#include "point.hpp"
Point::Point(){x=y=0;}
Point::Point(int a, int b){x=a; y=b;}
Point::~Point(){}
Point::sum(){return x+y;}
Point::sum2(){return x+y;}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
//main.cpp
#include "point.cpp"
#include <iostream.h>
int main()
{
Point t(1,2);
int z1=t.sum();
cout<<z1<<endl;
double z2=t.sum2();
cout<<z2<<endl;
system("pause");
        return 0;
}
при попытке компиляции получаю ошибку, что sum2() не член класса Point. забавно, что при расположении класса в одном файле с main() или же определении метода в point.hpp ошибка не возникает.
компилирую в borland builder'е 6
методы для поиска "в чем загвоздка" выполняют одно и то же, разница в названии и возвращаемом значении. вряд ли в названии мне кажется.
потому собственно и вопрос когда методы возвращающие double перестали быть членами класса... или все-таки в чем тут проблема?
Миниатюры
Хранение прототипов методов класса и их непосредственной реализации в различных файлах  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru