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

C++ Объекты и Классы - запутался - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Передача массива из одной функции в другую, и сложение его элементов. http://www.cyberforum.ru/cpp-beginners/thread570917.html
Здравствуйте, задание: Создать две функции для работы с массивом: • формирование массива трехзначных чисел с помощью датчика случайных чисел и вывода его на экран; • вычисление суммы массива. Имя массива и его размер передаются в функцию в качестве параметров. код: #include "stdafx.h" #include <stdio.h> #include <conio.h>
C++ Найти длину второго слова в строке как найти длину второго слова в строке? http://www.cyberforum.ru/cpp-beginners/thread570910.html
C++ win API увеличение числа
Изучаю в универе win api в BORLAND 5 мне дали задание когда нажимаешь стрелочки вверх(VK_UP) в низ(VK_DOWN) то текст "Привет" поднимается или опускается на 10 пикселей Столкнулся с такой проблемой, делаю так: // задал переменную static int counter=0; // тут реализую case WM_KEYDOWN:
Быстрое деление двух длинных чисел C++
Доброго времени суток! Реализую алгоритм деления длинного числа на длинное из книги Кнута (4.3.1). Числа хранятся в массиве типа int, в каждой ячейке по 3 цифры. Алгоритм в большинстве случаев считает верно только первые цифры частного, в итоге число получается меньше реального частного. Проверяла уже кучу раз, никак не могу найти ошибку. Само частное угадывается правильно, но неверно...
C++ Составить систему тестов и вычислить полученное выражение для нескольких значений http://www.cyberforum.ru/cpp-beginners/thread570871.html
Не могу понять задание помогите Составить систему тестов и вычислить полученное выражение для нескольких значений Х, определить при каких Х выражение не может быть вычислено. //--------------------------------------------------------------------------- #include <vcl.h> #include <conio.h> #include <iostream.h> #include <math.h> #include<dos.h>
C++ Перевод текстовой записи формулу в читаемую функцию. Пишу диплом, в реализации подразумевается генерация и изменение большого числа различных функций. Единственный вариант который я смог подобрать для более менее адекватного алгоритма подразумевает перевод текстовой записи в формулу в математическую, то есть чтобы можно было посчитать значение по формуле из текстового файла для заданного х. Все было бы замечательно, если бы можно было использовать... подробнее

Показать сообщение отдельно
jvov
1 / 1 / 0
Регистрация: 28.09.2011
Сообщений: 113
11.05.2012, 00:56  [ТС]     C++ Объекты и Классы - запутался
Цитата Сообщение от antoha398 Посмотреть сообщение
если вы объявляли ваш класс в файле *.h, то в main.cpp подключать надо его.
Иначе давайте код сюда)
main.ccp
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream> //potok vvoda vyvoda
#include <string> 
#include "GeometricalBody.cpp"
#include "Hexagonal_Prism.cpp"
using namespace std;
 
int main()
{
    
    GeometricalBody GB("GB");
 
    Hexagonal_Prism* HP = new Hexagonal_Prism(); // Создаем объект класса Hexagonal_Prism указатель  указывает на этот объект
    GeometricalBody *test = HP; // v roditeljskij klass prisoedinjaem naslednika
    HP->Init(2.5,3.6);
 
    cout << "GetSo: " << HP->GetSo() << "\nGetSb: " << HP->GetSb() << "\nGetSp: " << HP->GetSp() << endl;
 
    HP->SetObjectName("Figura");
 
    cout << " ----------- " << endl;
    HP->print();
    HP->print2();
    cout << " ------- " << endl;
    test->print();
    test->print2();
    cout << " ----------- " << endl;
 
    Hexagonal_Prism H ; 
    H.name="test"; 
        H.print(); H.print2();
    
    system("PAUSE");
    delete HP; //udalenie objekta
 
    return 0;
 
 
 
 
}
Фаил - GeometricalBody.ccp
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
25
26
27
#include <iostream> //potok vvoda vyvoda
#include <string> 
 
using namespace std;
 
class GeometricalBody
{
public:
    string name; //переменная, хранящая наименование объекта этого класса
public:
    void print() //для вывода имени объекта и значений вычисленных площадей на экран.
    {
        cout << "Parent name: " << name << endl;
    }
     virtual void print2() //asbtraktnyj klass , dlja pozdeno vjazyvanija (pereopredelenie)
    {
        cout << "Virtual void: " << name << endl;
    }
    GeometricalBody(string name)
    {
        this->name = name;
    }
    GeometricalBody() 
    {
        this->name = "default name";    
    }
};

Фаил - Hexagonal_Prism.ccp

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream> 
#include <string>
#include "GeometricalBody.h"
#include <cmath>
 
class Hexagonal_Prism: public GeometricalBody //nasledovanie 
{
public:
    string name;
    double r;// radius i visota
    double h; //переменная хранящая наименование объекта этого класса.
public:
    
    void SetObjectName(string name) //Для присвоения имени объекту класс содержит функцию SetObjectName
    {
        this->name = name;
    }
    
    void Init(double r, double h) //для инициализации членов-данных класса
    {
        this->r = r;
        this->h = h;
    }
    double GetSo() // plowadj osnovanija
    {
        return (3*(sqrtf(3/2))*(pow(r, 2)));    
    }
    double GetSb() // plowadj bokovaja
    {
        return ((6*r)*h);
    }
    double GetSp() // plowadj polnaja
    {
        return (2*GetSo() + GetSb());
    }
    void print() //для вывода имени объекта 
    {
        cout << "Child name: " << this->name << endl; 
    }
    void print2() //dlja pozdnego svjazyvanija (dimani4eskoe svjazyvanie)
    {
        cout << "Virtual override: " << this->name << endl;
    }
};

Фаил - Hexagonal_Prism.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#pragma once;
#include "GeometricalBody.h"
 
class Hexagonal_Prism {
void Init(double r, double h);
double GetSo();
double GetSb();
double GetSp();
void print();
void print2();
void SetObjectName(string name);
 
public:
    string name;
    double r;
    double h;
}
Фаил - GeometricalBody.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once
#include <string>
#include <iostream>
 
 
 
 
#pragma once
#include <string>
#include <iostream>
 
using namespace std;
 
class GeometricalBody
{
public:
void print();
virtual void print2();
GeometricalBody(string name);
GeometricalBody(); 
private:
    string name;
};
 
Текущее время: 04:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru