Я парень C ++, но я помню, что в PHP isset используется для проверки, содержит ли переменная значение при передаче через запрос get / post (я уверен, что есть и другие варианты использования, но это распространенное явление) Я верю).
У вас нет динамической типизации в C ++. Таким образом, вы не можете внезапно использовать имя переменной, которое вы ранее не указали явно. В C ++ действительно нет такой вещи, как «неустановленная» переменная.
Даже если вы говорите «int var;» и не инициализируйте его, переменная имеет значение, обычно мусор, но она все еще «установлена» в смысле PHP.
Закрытия, я полагаю, были бы #ifdef и #ifndef препроцессора, который проверяет только то, что вы определили переменную, используя #define. Но по моему опыту это в основном используется для пропуска или добавления кода на основе флагов. Например:
// code code code
#ifdef DEBUG
// debug only code that will not be included in final product.
#endif
// more code more code
Вы можете определить DEBUG, используя #define, чтобы определить, включать ли код "DEBUG" сейчас.
Возможно, если вы немного больше расскажете о том, что вы пытаетесь сделать с эквивалентом isset в C ++, это даст вам более полное представление о том, как это сделать "Путь C ++".