Я пытаюсь создать вектор typedefs. Всякий раз, когда я пытаюсь инициализировать вектор одним из этих typedef, он выдает ошибку no instance of constructor
.
typedef определяется следующим образом:
typedef palam::geometry::Pt2<uint16_t> CPoints;
, и я пытаюсь инициализировать вектор, как это:
CPoints point1(10, 15);
CPoints point2(15, 20);
std::vector<CPoints> points(point1, point2);
но это не работает. Я могу обойти эту проблему, инициализируя вектор значением NULL
, а затем используя функцию push_back()
, например
CPoints point1(10, 15);
CPoints point2(15, 20);
std::vector<CPoints> points(NULL);
points.push_back(point1);
points.push_back(point2);
Эта работа кажется немного грязной, и я уверен, должен быть лучший способ go об этом. Кто-нибудь знает, почему я не могу напрямую инициализировать вектор с помощью typedefs?