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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
d1skort
20 / 20 / 0
Регистрация: 10.02.2013
Сообщений: 75
#1

undefined reference to `vtable for - C++

11.05.2013, 13:32. Просмотров 767. Ответов 2
Метки нет (Все метки)

Вылетает эта ошибка при компиляции вот этого класса:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class BrassPlus : public AcctABC
{
private:
    double maxLoan;
    double rate;
    double owesBank;
public:
    BrassPlus(const char *s = "Nullbody", long an = -1,
              double bal = 0.0, double ml = 500,
              double r = 0.10);
    BrassPlus(const Brass &ba, double ml = 500, double r = 0.1);
    virtual void ViewAcct() const;
    virtual void Withdraw(double amt);
    void ResetMax(double m) {maxLoan = m;};
    void ResetRate(double r) {rate = r;};
    void ResetOwes() {owesBank = 0;};
};
Базовый класс:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class AcctABC
{
private:
    enum {MAX = 35};
    char fullName[MAX];
    long acctNum;
    double balance;
protected:
    const char * FullName() const {return fullName;}
    long AcctNum() const {return acctNum;}
public:
    AcctABC(const char *s = "Nullbody", long an = -1, double bal = 0.0);
    void Deposit(double amt);
    virtual void Withdraw(double amt) = 0;
    double Balance() const {return balance;}
    virtual void ViewAcct() const = 0;
    virtual ~AcctABC() {};
};
И сама реализация где вылетает ошибка:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
AcctABC::AcctABC(const char *s, long an, double bal)
{
    std::strncpy(fullName, s, MAX - 1);
    fullName[MAX-1] = '\0';
    acctNum = an;
    balance = bal;
}
 
BrassPlus::BrassPlus(const char *s, long an, double bal, double ml, double r) : AcctABC(s,an,bal)
{
    maxLoan = ml;
    owesBank = 0.0;
    rate = r;
}
Причем указывает именно на 10 строчку.
P.S. Извиняюсь за тонну кода.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2013, 13:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос undefined reference to `vtable for (C++):

[linker error] undefined reference to 'vtable for Car' - C++
доброго времени вам. помогите, пожалуйста, с задачей разобраться. хочу сделать пример на паттерн "абстрактная фабрика". фабрика собирает...

Ошибка компиляции единого файла: undefined reference to `vtable for .' - C++
Проблема при компиляции файла: prog.cpp:(.text.startup+0x42): undefined reference to `vtable for Man' prog.cpp:(.text.startup+0x64):...

Ошибки underfined reference to parentClass::method и unerfined reference to vtable при линковке - C++
При сборке компилятор выдает ошибки underfined reference to и unerfined reference to vtable. Есть базовый класс, два наследуемых от него и...

Странная ошибка: [Linker error] undefined reference to `__dyn_tls_init_callback' [Linker error] undefined reference to ld returned 1 exit status - C++
Здравствуйте. Вот недавно начал изучать книгу "С++ для чайников" Стефан Р. Девис 4-е издание. И напоролся на кучу ошибок) Но смог все...

undefined reference - C++
Пытаюсь разобраться с Box2D. Выпадает куча ошибок типа undefined reference to `b2World::b2World(b2Vec2 const&)'| Box2D.h файл...

Undefined reference to - C++
Есть класс NavyPort. Его заголовок: #ifndef NAVYPORT_H #define NAVYPORT_H class NavyPort { public: NavyPort(bool...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
anmartex
...
1703 / 1196 / 496
Регистрация: 12.02.2013
Сообщений: 1,978
11.05.2013, 14:01 #2
Вы должны реализовать те виртуальные методы, которые в базовом классе являются абстрактными, т.е. Withdraw и ViewAcct
d1skort
20 / 20 / 0
Регистрация: 10.02.2013
Сообщений: 75
11.05.2013, 14:12  [ТС] #3
Цитата Сообщение от anmartex Посмотреть сообщение
Вы должны реализовать те виртуальные методы, которые в базовом классе являются абстрактными, т.е. Withdraw и ViewAcct
Блин, точно. Даже стыдно немножко.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2013, 14:12
Привет! Вот еще темы с ответами:

Undefined reference to - C++
Matrix.h #pragma once #include <iostream> template <typename T> class Matrix { private: int n1, n2; T **mas; public:...

undefined reference to - C++
http://www.cyberforum.ru/qt/thread861722.html Не в том разделе создал тему, и поэтому даю линк на неё. Описание ошибки там же

undefined reference... - C++
Добрый день.На C перешел совсем недавно,поэтому могу не знать всех тонкостей.Подскажите,в какую сторону копать для исправления следующей...

undefined reference to `A::a' - C++
//==========================================================================================================================================...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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