Chciałem stworzyć kalkulator używając języka obiektowego C++. Napisałem kod:
main.cpp
#include <iostream>
#include "obliczenia.h"
using namespace std;
int main()
{
Obliczenia d1;
d1.wczytaj();
d1.oblicz();
return 0;
}
obliczenia.h
#include <iostream>
using namespace std;
class Obliczenia
{
public:
int skladnik1, skladnik2, odjemna, odjemnik, czynnik1, czynnik2, dzielna, dzielnik, wybor;
void wczytaj();
void oblicz();
};
obliczenia.cpp
#include <iostream>
#include "obliczenia.h"
using namespace std;
void Obliczenia::wczytaj()
{
cout<<"1 - Dodawanie";
cout<<endl<<"2 - Odejmowanie";
cout<<endl<<"3 - Mnozenie";
cout<<endl<<"4 - Dzielenie";
cout<<endl<<"Wybierz: ";
cin>>wybor;
}
void Obliczenia::oblicz()
{
if (wybor=="1")
{
cout<<endl<<"Podaj pierwszy skladnik: ";
cin>>skladnik1;
cout<<endl<<"Podaj drugi skladnik: ";
cin>>skladnik2;
cout<<endl<<"Wynik: "<<skladnik1+skladnik2;
}
}
I wyskakuje mi:
||=== Build: Debug in ćwiczenia (compiler: GNU GCC Compiler) ===|
H:\Documents and Settings\komp\Moje dokumenty\ćwiczenia\Obliczenia.cpp||In member function 'void Obliczenia::oblicz()':|
H:\Documents and Settings\komp\Moje dokumenty\ćwiczenia\Obliczenia.cpp|18|warning: comparison with string literal results in unspecified behaviour [-Waddress]|
H:\Documents and Settings\komp\Moje dokumenty\ćwiczenia\Obliczenia.cpp|18|error: ISO C++ forbids comparison between pointer and integer [-fpermissive]|
||=== Build failed: 1 error(s), 1 warning(s) (0 minute(s), 3 second(s)) ===|
Proszę, pomóżcie. Próbowałem już, ale kompletnie nie wiem o co chodzi.