Ошибка сегментации при вставке SparseVoxelOctree ⇐ C++
-
Anonymous
Ошибка сегментации при вставке SparseVoxelOctree
Я работаю над проектом C++, включающим разреженное октельное дерево, и обнаружил ошибку сегментации в своем коде. Кажется, проблема возникает в строке с условием if (!current->children[index]). Буду признателен за любые рекомендации по отладке и решению этой проблемы.
Вот соответствующий код:
void SparseVoxelOctree::insertVoxel(int x, int y, int z, bool isOccupied) { OctreeNode* текущий = m_root; for (int я = 0; я дети[индекс] = новый OctreeNode(); } текущий = текущий->дети[индекс]; } } Я пытался выяснить, что вызывает ошибку сегментации, но не смог определить основную причину. Похоже, проблема связана с доступом или созданием объектов OctreeNode в массиве current->children.
Если у кого-то есть опыт работы с разреженными окто-деревьями вокселей или подобными структурами данных и он может поделиться информацией о том, что может быть причиной этой проблемы, я буду очень признателен за вашу помощь.
ПС:
Конструктор OctreeNode
OctreeNode::OctreeNode() { для (int я = 0; я
Я работаю над проектом C++, включающим разреженное октельное дерево, и обнаружил ошибку сегментации в своем коде. Кажется, проблема возникает в строке с условием if (!current->children[index]). Буду признателен за любые рекомендации по отладке и решению этой проблемы.
Вот соответствующий код:
void SparseVoxelOctree::insertVoxel(int x, int y, int z, bool isOccupied) { OctreeNode* текущий = m_root; for (int я = 0; я дети[индекс] = новый OctreeNode(); } текущий = текущий->дети[индекс]; } } Я пытался выяснить, что вызывает ошибку сегментации, но не смог определить основную причину. Похоже, проблема связана с доступом или созданием объектов OctreeNode в массиве current->children.
Если у кого-то есть опыт работы с разреженными окто-деревьями вокселей или подобными структурами данных и он может поделиться информацией о том, что может быть причиной этой проблемы, я буду очень признателен за вашу помощь.
ПС:
Конструктор OctreeNode
OctreeNode::OctreeNode() { для (int я = 0; я
Мобильная версия