#include <string>
#include <map>
#include <iostream>
using namespace std;
class Okolina
{
public:
double VrednostPromenljive( const string& s ) const
{
map<string,double>::const_iterator
f = _Promenljive.find(s);
if( f != _Promenljive.end() )
return f->second;
else{
// ovde bi trebalo da se napravi izuzetak
return 0;
}
}
bool DefinisanaPromenljiva( const string& s ) const
{
map<string,double>::const_iterator
f = _Promenljive.find(s);
return f != _Promenljive.end();
}
void DodajPromenljivu( const string& s, double v )
{ _Promenljive[s] = v; }
private:
map<string,double> _Promenljive;
};
main()
{
Okolina o;
o.DodajPromenljivu( "x", 2.32 );
o.DodajPromenljivu( "y", 5 );
o.DodajPromenljivu( "x", 7 );
cout << o.VrednostPromenljive( "x" ) << endl;
cout << ( o.DefinisanaPromenljiva("y") ? "Imamo y." : "Nemamo y." ) << endl;
cout << ( o.DefinisanaPromenljiva("z") ? "Imamo z." : "Nemamo z." ) << endl;
return 0;
}