使用STL矢量的自定义矢量容器

问题描述 投票:0回答:1

我有一段代码,其中向量的定义是这样的

typedef std::vector<double> my_vec

和矩阵为

typedef std::vector<my_vec> matrix

能否用一个自定义的类来代替这些定义,这个类可以保留STL向量的所有特征(不破坏现有的代码),但也可以用新的成员来扩展。

事实上,我想要的是简单地给每个向量添加一个bool标志。

c++ oop stl
1个回答
0
投票

根据我收到的提示,这里是我创建的自定义类。

 template <typename T>                                                                                                                                                                                    
 class fp_vec : public std::vector<T> {                                                                                                                                                                   
     public:                                                                                                                                                                                              
         using std::vector<T>::vector;                                                                                                                                                                    
         bool n = false;                                                                                                                                                                         
 };  

和类型定义

typedef fp_vec<double> my_vec
typedef fp_vec<my_vec> matrix

我知道这并不理想,因为 std::vector 没有一个虚拟的destructor,所以动态分配在这里是严重的no no。

© www.soinside.com 2019 - 2024. All rights reserved.