Создание подмножества повышения окон

После добавления назначения копирования ваш код должен быть в безопасности.

Однако, если вы в порядке с написанием east() вместо east в своем коде, то более элегантное решение может быть следующим:

using ColumnVector3 = Eigen::Matrix<double, 3, 1>;

struct EnuPosition : public ColumnVector3
{
  EnuPosition(): ColumnVector3(ColumnVector3::Zero()) {}

  EnuPosition(double east, double north, double up): ColumnVector3(east, north, up) {}
  template<class X> 
  EnuPosition(const X& other): ColumnVector3(other) {}

  double&       east()        {return this->x();}
  double const& east() const  {return this->x();}
  double&       north()       {return this->y();}
  double const& north() const {return this->y();}
  double&       up()          {return this->z();}
  double const& up() const    {return this->z();}
};

Если вы намеренно не хотите наследовать, вы, конечно же, можете сохранить ColumnVector3 в качестве члена.

13
задан Laserallan 13 January 2009 в 15:54
поделиться

1 ответ

Решенный это.

Решение BCP имело make-файлы для проектов, однако я должен был скопировать каталог инструментов и корень каталога повышения к месту, я скопировал все, что мой освобождает для получения вещей, работающих.

5
ответ дан 2 December 2019 в 01:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: