Witam,
Wiem, że istnieje wiele tematów o takiej samej nazwie, ale u mnie jest trochę inaczej.
Gdy tworzę nowy projekt, dodaję klasę (wklejam dokładnie to samo, do tak samo nazwanych plików jak poniżej), to program działa.
Gdy go zamknę, otworzę ponownie i skompiluję, to wywala błędy:
2.2.cpp:(.text+0x26): undefined reference to 'tutaj wywala tytuły wszystkich funkcji'
O co może chodzić, dlaczego działa tylko za 1szym razem?
Pozdrawiam
//EDIT: Program DEV-C++ 5.11 albo Code::Blocks 16.01
2.2.cpp
#include <iostream>
#include <iomanip>
#include "Tdzialania.h"
using namespace std;
int main(int argc, char** argv) {
Tdzialania licz;
licz.podajDane();
cout<<"Suma to: "<<licz.dodawanie()<<endl;
cout<<"Różnica to: "<<licz.odejmowanie()<<endl;
cout<<"Iloczyn to: "<<licz.mnozenie()<<endl;
cout<<"Iloraz to: "<<setprecision(3)<<licz.dzielenie()<<endl;
cout<<"Potęgowanie to: "<<licz.potegowanie()<<endl;
return 0;
}
Tdzialania.cpp
#include "Tdzialania.h"
#include <iostream>
#include <cmath>
using namespace std;
void Tdzialania::podajDane(){
cout<<"Podaj liczby A i B"<<endl;
cin>>a;
cin>>b;
}
int Tdzialania::dodawanie(){
return a+b;
}
int Tdzialania::odejmowanie(){
return a-b;
}
int Tdzialania::mnozenie(){
return (a*b);
}
float Tdzialania::dzielenie(){
float c=(float)a/b;
return (c);
}
float Tdzialania::potegowanie(){
return pow(a,b);
}
Tdzialania.h
#ifndef TDZIALANIA_H
#define TDZIALANIA_H
class Tdzialania{
private: int a,b;
public:
void podajDane();
int dodawanie();
int odejmowanie();
int mnozenie();
float dzielenie();
float potegowanie();
};
#endif
- 2.2.cpp (0 KB) - ściągnięć: 159
- Tdzialania.cpp (0 KB) - ściągnięć: 236