Я новичок в ООП, и у меня проблема с определением конструктора. headfile.h:[C++] Конструктор не обнаруживает компоненты
#ifndef RACHUNEK_H_INCLUDED
#define RACHUNEK_H_INCLUDED
#include <string>
class Rachunek
{
std::string surname;
std::string nr_account;
double balance;
public:
Rachunek();
Rachunek(std::string & name,std::string & nr,double s = 0.0);
~Rachunek(){};
void show();
void give(const double m);
void get(const double m);
};
#endif // RACHUNEK_H_INCLUDED
файл .cpp:
#include <iostream>
#include <string>
#include "rachunek.h"
using namespace std;
Rachunek::Rachunek() //default
{
surname = "not specified";
nr_account = "0000-0000-0000-0000";
balance = 0.0;
}
Rachunek::Rachunek(string & name, string & nr, double s = 0.0) //mysecond
{
surname = name;
nr_account = nr;
balance = s;
}
проблемой является определение конструктора. Я не знаю, что не так ...
И какова ошибка, которую вы получаете? –
Хорошо. Ошибка была в назначении в определении: я искал это в течение длительного времени – Emilo
В дополнение к ошибке компиляции вы никогда не использовали бы с плавающей точкой для баланса банковского счета. Это заставляет аудиторов сходить с ума по ошибкам округления. Вместо этого используйте центы и исправьте вывод, чтобы показать 2 десятичных знака. Кроме того, вы никогда не сможете создать учетную запись с исходным ненулевым балансом. Средства всегда должны быть переведены с другого счета. (И да, я работаю в банке :-) –