0
struct vertex
{
th::Vector3 point[2];
std::list<vertex>::iterator pointConnection[2];
};
std::list<vertex> vertices;
vertices.push_back(
{{vertex1->_getDerivedPosition(), vertex2->_getDerivedPosition()},
{vertices.end(), vertices.end()}}
);
Я не мог найти причину, по которой это не сработает, в то время как следующие компилируются в порядке? Вы можете объяснить, пожалуйста? Что я делаю не так?Инициализация на месте структур в контейнере std
vertex v = {{vertex1->_getDerivedPosition(), vertex2->_getDerivedPosition()},
{vertices.end(), vertices.end()};
'vertex' не является типом POD, потому что его члены не являются типами POD –
@TonyTheLion Я отредактировал вопрос. Я забыл об этом vector3 и итераторе. Когда я готовил вопрос, структура была совсем другой. Перед тем, как спросить, делали разные вещи. – Etherealone
Тем не менее, если второй работает, не помещает ли это в push_back, который должен работать? У меня были проблемы с этим предметом в течение долгого времени, я никогда не смогу исправить это в первый раз. Мне нужен конструктор и использовать emplace, если он не POD? У конструктора будет много штрафных санкций, потому что это будет сделано LOT. – Etherealone