Назначить другое имя / псевдоним для std::vector

#c #vector #typedef

#c #вектор #typedef

Вопрос:

Я пытаюсь дать std::vector другое имя, например MyVector , поэтому я сделал следующий typedef

 typedef std::vector<float> MyVector<float>;
 

Однако Visual Studio жалуется на MyVector то, что «MyVector не является шаблоном»

Как мне назначить std::vector другое имя?

У меня есть may MyVector в моем коде, который, по сути std::vector , таков, поэтому я просто хочу равняться std::vector , MyVector поэтому мне не нужно менять все MyVector into std::vector .

Ответ №1:

Вам нужен шаблон псевдонима, например:

 template <typename T>
using MyVector = std::vector<T>;
 

Это позволит вам использовать его следующим образом:

 MyVector<float> vec = stuff;
 

Где vec будет a std::vector<float> .