Mam taki kod (w 3 plikach):
main.cpp
#include <iostream>
#include <string>
#include "Pies.h"
int main()
{
Pies dog(4);
dog.imie = "Brutus";
dog.podajDane();
return 0;
}
Pies.h
#ifndef PIES_H
#define PIES_H
#include <string>
#include <iostream>
class Pies
{
private:
int nogi;
public:
std::string imie;
Pies(int ileNog);
void podajDane();
};
#endif
Pies.cpp
#include "Pies.h"
imie = "Fafik";
nogi = 3;
Pies::Pies(int ileNog)
{
this->nogi = ileNog;
}
void Pies::podajDane()
{
std::cout << imie << " ma " << nogi << " nogi";
}
Problem polega na tym, że w pliku Pies.cpp kiedy próbuję nadać wartości zmiennych imie i nogi pojawia się bład. To samo gdy napiszę Pies::imie i Pies::nogi. W jaki sposób mogę zainicjalizować te zmienne, działać na nich w pliku Pies.cpp? Po zakomentowaniu tych dwóch lini program kompiluje się i działa bez problemu - w konsoli pojawia się napis "Brutus ma 4 nogi".