Ух ты, ух ты... Это что ж такое творится-то :(
От: Amygdala Россия  
Дата: 05.12.18 08:40
Оценка: :))) :)
Долбился сейчас три часа об баг. И это просто жесть.

Короче, есть библиотечка. Где-то внутри нее, никак не опознаваемый и не видимый снаружи библиотечки есть некий класс с названием MySuperClass и в одном из файлов статический объект

static MySuperClass* global_super = NULL;

Сделано это было давно и уже забыто.

Но вот в основном приложении, который юзает эту библиотечку мне понадобился схожий функционал этого класса, но немного другой.

Я взял, копирнул тот класс и сам статический объект из библиотечки и класс изменил как мне надо. А вот названия класса и имя статического объекта — не изменил.

Ну и началось. Падение на любом обращении к любому члена класса.

Долбежка башкой об клавиатуру и создание пустых проектов с таким же классом (без библиотечки) приводило к тому, что все работало.
Пока мне не стрельнуло переименовать класс и статический объект. И конечно же все заработало. Он падал на обращении к полям класса, которых не было в классе внутри библиотеки.

Это что ж такое-то!!! ((

Это хорошо еще у меня были исходники библиотеки. А если б я случайно назвал класс и переменную так же как создатели библиотеки — да этот баг вообще бы никогда не поймался бы.

Вот это жесть!!! ((
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.