Кто-нибудь сталкивался с утверждением нулевого указателя при добавлении подпункта в cmfcpropertygridproperty
Сложный код на C++, но суть в псевдокоде такова:
У меня есть pGroup1 = CMFCPropertyGridProperty * со следующей структурой.
pGroup1
subGroup1ItemA("числовой")
подгруппа1itema_1("PI",(_variant_t) "3.14", "коэффициент" )
подгруппа1itema_2("e",(_variant_t) "2.7182", "рост" )
подгруппа 1b("текст")
подгруппа1с("точка")
Это устанавливается во время выполнения, работает нормально.
Однако, когда я добавляю, во время последующего взаимодействия с пользователем:
subGroup1ItemA("Numeric").addSubItem("Phi",(_variant_t) "1.618", "gold" )
Программа встречает утверждение нулевого указателя в DLL(mfc140ud.dll) когда мышь пролетает над окном, содержащим эти объекты CMFCPropertyGridProperty.
Что я уже пробовал:
Ругался, дергал за волосы.
Кроме того, я поймал исключение, но все еще не знаю, какой указатель объекта находится в null.
Пошаговое выполнение кода, добавляющего этот элемент, работает, и я могу проверить, что добавленный объект находится в правильном положении измененной цепочки узлов-заголовков.
Shao Voon Wong
Можете ли вы загрузить на GitHub пример проекта, который воспроизводит эту проблему? Потому что я не могу найти метод addSubItem, который соответствует вашим аргументам. Вы не должны приводить строковый литерал к _variant_t: это 2 разных типа.