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

Ошибка в наследовании - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что будет с указателем после использования операции delete? http://www.cyberforum.ru/cpp-beginners/thread1108034.html
Имеется код: #include <iostream> using namespace std; int main() { int *wtf_ptr; wtf_ptr=new int(8);
C++ Ошибка в коде Цикл работает пока вводятся tempЫ и цикл_офф равен фалс. Когда пишу в темп "no more", cycle_off становится тру и цикл прекращается. Проблема в том что дальше окно закрывается и код... http://www.cyberforum.ru/cpp-beginners/thread1108022.html
C++ Как правильно отнаследовать?
Здарова! Такой вопрос! как можно правильно записать следующее:есть два класса 1-й класс -граф, второй класс-минимальный путь из одной точки до другой.Хотел сделать следующее, есть некоторая перменная...
Разработайте программу на С++, которая вводила бы пробег в милях и бензин, использованный из каждой емкости C++
Здравствуйте! Помогите пожалуйста! Программа работает, но не правильно немного, с меткой проблемы, результат выводит не верно на последних шагах. Очень хочется понять свои ошибки, но сама не...
C++ Написать программу содержащую процедуры формирования и просмотра списка и функцию вставляющую элемент с заданным номером http://www.cyberforum.ru/cpp-beginners/thread1107993.html
написать программу содержащую процедуры формирования и просмотра списка и функцию вставляющую элемент с заданным номером
C++ Определить, упорядочены ли по возрастанию или по убыванию цифры в записи натурального n Код работает только для возрастающих чисел, а для убывающих выдаёт NO. Думаю, проблема с индексами в массиве, но как ни пробовал, ничего не получилось изменить. Заранее благодарю :) Вот код:... подробнее

Показать сообщение отдельно
Devilox
3 / 3 / 2
Регистрация: 19.02.2014
Сообщений: 123

Ошибка в наследовании - C++

28.02.2014, 22:25. Просмотров 256. Ответов 7
Метки (Все метки)

Появилась проблема в наследовании с использованием виртуальных методов.
Если записать код вот так, присваивая значения переменным не в классе dxDotBG, то появляется ошибка "неразрешённый внешний символ":
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
class dxObject {
public:
    dxObject() {}
    ~dxObject() {}
 
    float GetX() const { return itsX; }
    float GetY() const { return itsY; }
    char GetSymbol() const { return itsSymbol; }
    WORD GetColor() const { return itsColor; }
 
    virtual void Move(float, float);
 
    virtual void Rotate(float);
    virtual void Rotate(float, float, float);
 
    virtual WORD SetColor(int);
protected:
    float itsX;
    float itsY;
    char itsSymbol;
    WORD itsColor;
};
 
class dxDotBG : public dxObject {
public:
    dxDotBG(float, float, int);
    ~dxDotBG() {}
 
    void Move(float, float);
    void Rotate(float, float, float);
    WORD SetColor(int);
};
 
dxDotBG::dxDotBG(float x, float y, int color) {
    itsX = x;
    itsY = y;
}
А если вот так(внутри), то ошибки нет:
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
class dxObject {
public:
    dxObject() {}
    ~dxObject() {}
 
    float GetX() const { return itsX; }
    float GetY() const { return itsY; }
    char GetSymbol() const { return itsSymbol; }
    WORD GetColor() const { return itsColor; }
 
    virtual void Move(float, float);
 
    virtual void Rotate(float);
    virtual void Rotate(float, float, float);
 
    virtual WORD SetColor(int);
protected:
    float itsX;
    float itsY;
    char itsSymbol;
    WORD itsColor;
};
 
class dxDotBG : public dxObject {
public:
    dxDotBG(float x, float y, int num) { itsX = x, itsY = y; }
    ~dxDotBG() {}
 
    void Move(float, float);
    void Rotate(float, float, float);
    WORD SetColor(int);
};
В чём тут проблема?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.