#ifndef __BALLOON_VAR_H__ #define __BALLOON_VAR_H__ class var { private: int type; double number; std::string str; std::string name; std::list balloon_array; std::list balloon_hash; abstract_syntax_tree function; public: var() { type=__null_type; number=0; str=""; name=""; balloon_array.clear(); balloon_hash.clear(); function.set_clear(); return; } var(const var& p) { type=p.type; number=p.number; str=p.str; name=p.name; balloon_array=p.balloon_array; balloon_hash=p.balloon_hash; function=p.function; return; } var& operator=(const var& p) { type=p.type; number=p.number; str=p.str; name=p.name; balloon_array.clear(); balloon_hash.clear(); function.set_clear(); balloon_array=p.balloon_array; balloon_hash=p.balloon_hash; function=p.function; return *this; } void print_var() { std::cout<<"[type: "; print_scalar(type); std::cout<<",name: "<>[Runtime-error] overflow when searching member "<<_place<<" but the max size of array \'"<::iterator i=balloon_array.begin();i!=balloon_array.end();++i,++cnt) if(cnt==_place) return *i; std::cout<<">>[Runtime-error] overflow when searching member "<<_place<<" but the max size of array \'"<>[Runtime-error] overflow when searching member "<<_place<<" but the max size of array \'"<::iterator i=balloon_array.begin();i!=balloon_array.end();++i,++cnt) if(cnt==_place) { addr=&(*i); return addr; } std::cout<<">>[Runtime-error] overflow when searching member "<<_place<<" but the max size of array \'"<::iterator i=balloon_hash.begin();i!=balloon_hash.end();++i) if(i->name==_name) return *i; std::cout<<">>[Runtime-error] hash \'"<::iterator i=balloon_hash.begin();i!=balloon_hash.end();++i) if(i->name==_name) { addr=&(*i); return addr; } std::cout<<">>[Runtime-error] hash \'"<