设计模式- c++类结构
design patterns - c++ class structure
我正在编写一个类来表示要在投资组合选择器中使用的证券池。根据客观度量和约束,类对象将缓存一些相关数据以进行性能优化。
这可以通过定义一个包含公共元素及其子类的基类来完成,每个基类都针对特定的客观度量/约束进行了优化。
但是,我希望能够为多个指标缓存数据。有没有标准的/整洁的方法来做这件事?
编辑:class Pool {
// Contains data for different financial securities
}
class PercentileLossPool : public Pool {
// Contains data which makes calculating percentiles easy
}
class AvgProfitPool : public Pool {
// Contains data which makes calculating averages easy
}
这个类结构使得对象可以针对特定的指标(百分位数,平均值)进行优化
我想要构建的是一个对象,它是针对多个指标进行优化,而无需为所有排列编写代码
您可以考虑通过继承向您的类添加数据来颠倒这种关系:
class PoolBase {
// Contains data for different financial securities
};
class PercentileLossData {
// Contains data which makes calculating percentiles easy
};
class AvgProfitData {
// Contains data which makes calculating averages easy
};
template< typename... Ts >
class Pool : public PoolBase, Ts...
{
};
typedef Pool< PercentileLossData, AvgProfitData > MyPool1;
但是,如果没有关于具体问题的进一步信息,就很难给出有效的建议。因此,把上面的想法作为一个想法,但要注意,根据您的用例,还有多种其他选择。
相关文章:
- 如何循环打印顶点结构
- 通过方法访问结构
- 使用不带参数的函数访问结构元素
- 预处理器:插入结构名称中的前一个行号
- 为什么在没有显式默认构造函数的情况下,将另一个结构封装在联合中作为成员的结构不能编译
- 孤立代码块在结构中引发异常
- 有什么方法可以遍历结构吗
- 如何在 C# 中映射双 C 结构指针?
- 如何在C++中使用结构生成映射
- 无法将结构注册为增强几何体3D点
- 多成员Constexpr结构初始化
- C++将文本文件中的数据读取到结构数组中
- 如何重构类层次结构以避免菱形问题
- 如何在C++中序列化结构数据
- std::vector的包装器,使数组的结构看起来像结构的数组
- 没有为自己的结构调用列表推回方法
- 奇怪的结构&GCC&clang(void*返回类型)
- 在 c++ 中拥有一组结构的正确方法是什么?
- vscode g++链路故障:体系结构x86_64的未定义符号
- C++概念:如何使用'concept'检查模板化结构的属性?