blob: 5cb78c1f20449e9d2eb621baa01c013a1ae9a8c6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
#include <vector>
namespace opt_utilities
{
template <typename T>
class optvec
:public std::vector<T>
{
public:
optvec()
{}
optvec(size_t s)
:std::vector<T>(s)
{}
optvec(const std::vector<T>& rhs)
:std::vector<T>(rhs)
{}
public:
operator std::vector<T>& ()
{
return dynamic_cast<std::vector<T>&>(*this);
}
operator const std::vector<T>& ()const
{
return dynamic_cast<const std::vector<T>&>(*this);
}
};
};
|