#ifndef INC_6502_EMULATOR_REGISTER_H #define INC_6502_EMULATOR_REGISTER_H #include #include using namespace std; namespace emu_6502 { template class Register { private: string name; protected: T value; public: explicit Register(string name); Register(const Register&) = delete; virtual Register& operator=(const Register&) = delete; const string& get_name() const; T get_value() const; void set_value(T value); }; } #endif //INC_6502_EMULATOR_REGISTER_H