C++ Integer, Binary and Decimal classes
C++ Integer, Binary and Decimal classes
在大学里,我的任务是用c++设计和实现三个类:Integer(作为抽象)、Binary和Decimal,用数组作为数字存储and Integer应该包含虚拟算术运算方法。
所以我对最后一点有一些误解。。。方法应该有什么签名,以及如何在子类中定义它们?
这不是一项容易的任务,因为它是算术运算二进制运算符,并且是虚拟方法——一种单一的调度机制。
事实上,问题的优雅解决方案应该需要多方法,而不是C++中的原生方法。
作为一个提示,让我给你一个关于加法的想法:看看C++的双重调度和访问者模式。
class Integer {
public:
virtual void Add(Integer &B) { } = 0; // Adds B to the current value, etc..
}
class Decimal : public Integer {
public:
void Add(Decimal &B) { /* do sth */ }
}
int main(void) {
Integer *a = new Decimal();
Integer *b = new Decimal();
a->Add(b);
}
相关文章:
- 使用char类型将decimal转换为string,将string转换为decimal
- Threads with Classes and std::packaged_task
- C++ Classes/Confusion
- 在使用Qt Designer Form Classes扩展我自己的自定义小部件时防止重复的自动连接
- C++ - DWORD Decimal to DWORD Hexadecimal
- Classes composition
- C++ - 创建游戏实体时,我应该使用"sub classes"还是结构?
- C++中"classes"(非对象)的哈希表
- inheritance Classes
- 十进制数字的区域设置感知编辑控件子类化(格式[sign][xxx..][decimal separator][yy.])
- C++11 empty flag classes
- Derived Classes C++
- std::decimal::decial64正确用法,g++4.6.3
- 如何从std::decimal中获取系数
- C++ "Virtual functions handling on multiple base classes"
- Singleton Service classes in c++
- Static classes C ++
- Splitting up classes c++
- 使用命名空间std和Template Classes
- C++ Integer, Binary and Decimal classes