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

Указатели на объекты класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ошибка в программе http://www.cyberforum.ru/cpp-beginners/thread32647.html
я скачал Borland c при компиляции он мне выдает такую ошибку помогите кто знает, но я думаю что сама прога крива легла так как я ее скачивал уже установленную с DC, если есть у каво сетап файл ее...
C++ Нужно написать програму на функции с масивом Нужно написать програму в которой к выразу будет прыклеплятся функция. http://www.cyberforum.ru/cpp-beginners/thread32645.html
Вычислить номер максимального элемента C++
В одномерном массиве, состоящем из n целых эелементов вычислить : 1) номер максимального элемента 2) произведение элементов массива, расположенных между первым и вторым нулевыми элементами
Неориентированный граф C++
Помогите пожалуйста с задачкой: Неориентированный граф задан при помощи списка ребер. Построить матрицы смежности и инцидентности. Данные берутся из файла: m n U1 V1 U2 V2 ... ... Un Vn ...
C++ алгоритм фон Неймана http://www.cyberforum.ru/cpp-beginners/thread32610.html
блин... помогите пожалуйста... надо упорядочить массив по неубыванию с помощью алгоритма сортировки слияниями (). Ваще даже не представляю как ето делать... ПОМОГИТЕ !!! Добавлено через 1 минуту...
C++ Баланс скобок Люди может укажите мне на ошибку в программе по которой не находит баланс..? #include<iostream.h> #include<string.h> #include<fstream.h> #include<conio.h> const int n=100; fstream F,G; char... подробнее

Показать сообщение отдельно
abnata
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 3

Указатели на объекты класса - C++

04.05.2009, 15:09. Просмотров 537. Ответов 5
Метки (Все метки)

Здравствуйте. помогите новичку. есть проблема с освоением программирования на VC++. пытаюсь скомпилировать вот этот пример из книги:
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream>
using std::cout;
using std::endl;
 
class CBox
{
    // constructor's declaration
    public:
        CBox(double lv = 1.0, double bv = 1.0, double hv = 1.0)
        {
            cout << endl << "Constructor is called";
            m_Length = lv;    // setting  
            m_Width = bv;    // data-members
            m_Height = hv;    // valumes
        }
 
        // function foe box volume calculation
        double Volume()
        {
            return m_Length * m_Width * m_Height;
        }
    
        // function for volume of 2 boxex compare:
        // returns true (1) if 1-st is biggest & false (0) - otherwise
        int Compare(CBox* pBox) const
        {
            return this->Volume() > pBox->Volume();  // здесь ошибка
        }
 
    private:
        double m_Length;
        double m_Width;
        double m_Height;
};
 
int main()
{
    CBox boxes[5];                // declaration of array of objects CBox            
    CBox match(2.2, 1.1, 0.5); // match box initialization
    CBox cigar(8.0, 5.0, 1.0); // cigar box initialization
    CBox* pB1 = &cigar;            // pointer inicialization by cigar 
                                //object address
    CBox* pB2 = 0;                //pointer on CBox inicialized by null
    cout << endl
        << "cigar address = " << pB1    // address visualization
        << endl
        << "cigar volume = "
        << pB1->Volume();        // object volume, on whitch is set pointer
    pB2 = &match;
    if(pB2->Compare(pB1))        // compare by pointer
        cout << endl 
            << "match is biggest tnan cigar";
    else
        cout << endl
            << "match is equal or begger than cigar";
    pB1 = boxes;                // array address setting
    boxes[2] = match;            // 3-d element as equal match setting
    cout << endl                // access by pointer
        << "boxes[2] volume = " << (pB1 + 2)->Volume();
        cout << endl;
    return 0;
}
но компилятор находит ошиюку:error C2662: 'CBox::Volume' : cannot convert 'this' pointer from 'const CBox' to 'CBox &'

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