Nic*_*sui 2 c++ typedef vector
我试图给出std::vector
一个不同的名称,例如MyVector
,所以我遵循了 typedef
typedef std::vector<float> MyVector<float>;
Run Code Online (Sandbox Code Playgroud)
然而,Visual Studio 抱怨MyVector
“MyVector 不是模板”
如何指定std::vector
另一个名称?
我的代码中有 may ,MyVector
本质上是std::vector
,所以我只想等于 ,std::vector
所以MyVector
我不必将所有更改MyVector
为std::vector
。
你想要的是一个别名模板,如下所示:
template <typename T>
using MyVector = std::vector<T>;
Run Code Online (Sandbox Code Playgroud)
这将允许您像这样使用它:
MyVector<float> vec = stuff;
Run Code Online (Sandbox Code Playgroud)
哪里vec
会有一个std::vector<float>
.