Мои знания в C ++ очень ограничены, но, исходя из вашего описания, я считаю, что вы используете примитивный встроенный тип C ++ (int, double, bool, ...). Если это так, то трудно узнать, была ли инициализирована ваша переменная, поскольку все типы примитивов имеют свое значение по умолчанию на случай, если оно объявлено, но не присвоено значение.
Один способ, которым я привык ходитьвокруг этой проблемы заключается в том, что всегда инициируйте переменные со специальными значениями по умолчанию. Однако, если переменным присваиваются значения, которые соответствуют значениям по умолчанию, это может быть проблемой.
Однако я нахожу это редким случаем, потому что если вы используете библиотеку, тогда у класса должен быть метод /переменная ... чтобы вы знали статус текущего экземпляра, если это необходимо. В противном случае класс должен инициализировать допустимые значения по умолчанию, или вы используете его неправильно. Если вы создаете свой собственный класс, тогда легко добавить в него переменную состояния, верно?
Как я уже говорил, мои знания очень ограничены, хотя я могу ошибаться.