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

Problem - Undefined reference to - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать функцию для создания динамического массива http://www.cyberforum.ru/cpp-beginners/thread796860.html
Как создать функцию в другом заголовочном файле, которая будет создавать двумерный динамический массив. входящие параметры такие (имя массива,переменная кол ва строк,перемен кол ва столбов) функция сама просит ввести данные "переменная кол ва строк,перемен кол ва столбов" и затем эти пременные можно использ в мэйне(я так понимаю через указатель)
C++ Массивы структур Ввести координаты начала и конца N отрезков на плоскости.Написать функцию определяющую пересекаются два отрезка или нет.используя эту функцию вывести список всех пересечений среди заданных отрезков.Реализовать через массив структур.данные считаются из файла по алгоритму:первая строка:Количество значений.вторая строка и послед-е-соотв значение. помогите пожалуйста как такое реализовать?с другом... http://www.cyberforum.ru/cpp-beginners/thread796828.html
C++ Ошибка компиляции
#include <iostream> class X { public: static int a; }; void main() {
Написать программу, в которой на экран выводится картинка C++
Здравствуйте) помогите, пожалуйста, написать программу ( С++) в которой на экран выводится такая картинка * * * * * ...
C++ String.Insert http://www.cyberforum.ru/cpp-beginners/thread796770.html
Помогите, пожалуйста, в чем проблема String gr; gr = "3x+5"; String t = "00"; gr.Insert(1, t); на выходе строка gr как была 3x+5 так и осталась. VS 2012
C++ Вставить перед каждой серией минимальный элемент массива Доброго времени суток. Напишите, пожалуйста, прогу для этого задания . ( в коде не должны быть использованы квадратные скобки, т.е без массивов, с использованием динамической памяти) Очень надеюсь на вас! Формируется массив, элементами которого является числовая последовательность, за-канчивающаяся 0. Назовем серией группу подряд идущих одинаковых элементов, а длиной серии – количество этих... подробнее

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

Problem - Undefined reference to - C++

28.02.2013, 03:58. Просмотров 584. Ответов 11
Метки (Все метки)

Доброго времени суток и спасибо заранее за Вашу помощь.

В качестве хобби начал изучать C++. Прочитал немного материала на сайтах и одну книгу, получил общее представление о языке и теперь принялся за упражнения. Вроде неплохо получалось, но вот дошел до первого упражнения с классами и тут же сел в лужу.

Упражнение требует создать программу с классом Account (разделенным на header и source) который представляет собой банковский счет и включает в себя несколько функции позволяющих манипулировать балансом счета.

Итак, вот что у меня получилось. При попытке build and run, code::blocks выдает целый список ошибок со словами "undefined reference to". Насколько я понимаю, main.cpp видит declaration моих функций в Account.h, но не видет их definition в Account.cpp. Я не понимаю почему, ведь наличие #include Account.h в Account.cpp, а также префикс Account:: переж каждой функцией класса должны вместе донести до main.cpp полную суть класса и его функций. Разве нет? Тысячу раз сверил все с книжкой, перепечетал похожую программу из книжки (Дейтл и Дейтл) и все равно не получается!

Прошу помощи!

Сам код:

Class header - Account.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using namespace std;
 
class Account
{
public:
    Account(int);
    void accountCredit(int);
    void accountDebit(int);
    void setBalance(int);
    int getBalance();
 
private:
    int nBalance;
};
Class source - Account.cpp

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>
#include "Account.h"
 
using namespace std;
 
Account::Account(int startBalance)
{
    setBalance (startBalance);
}
 
void Account::setBalance(int startBalance)
{
    if (startBalance >= 0)
        nBalance = startBalance;
 
    if (startBalance < 0)
    {
        cout << "Invalid starting balance entered. Initial balance set to 0." << endl;
        nBalance = 0;
    }
}
 
int Account::getBalance()
{
    return nBalance;
}
 
void Account::accountCredit(int credit)
{
    nBalance = nBalance + credit;
}
 
void Account::accountDebit(int debit)
{
    if (debit <= nBalance)
        nBalance = nBalance - debit;
 
    if (debit > nBalance)
        cout << "You do not have sufficient funds in the account." << endl;
}
Program - main.cpp

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
#include <iostream>
#include "Account.h"
 
using namespace std;
 
int main()
{
    Account bankAccount1(1000);
    Account bankAccount2(2000);
 
    cout << "bankAccount1's initial balance is:" << bankAccount1.getBalance() << endl;
    cout << "bankAccount2's initial balance is:" << bankAccount2.getBalance() << endl;
 
    bankAccount1.setBalance(1100);
    bankAccount2.setBalance(2200);
 
    cout << "The new balance for bankAccount1 is:" << bankAccount1.getBalance() << endl;
    cout << "The new balance for bankAccount2 is:" << bankAccount2.getBalance() << endl;
 
    bankAccount1.accountCredit(5000);
    bankAccount2.accountCredit(10000);
 
    cout << "The new balance for bankAccount1 is:" << bankAccount1.getBalance() << endl;
    cout << "The new balance for bankAccount2 is:" << bankAccount2.getBalance() << endl;
 
    bankAccount1.accountDebit(6200);
    bankAccount2.accountDebit(12000);
 
    cout << "The new balance for bankAccount1 is:" << bankAccount1.getBalance() << endl;
    cout << "The new balance for bankAccount2 is:" << bankAccount2.getBalance() << endl;
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru