Мне хочется сказать, что то, что вы хотите, не имеет смысла.Константа - это то, что не меняет свое значение, а не то, что, возможно, меняет свое значение один или два раза.Если вам нужна глобальная переменная, просто сделайте ее непостоянной.
С другой стороны, если у вас есть значения констант области действия, вы просто объявите и инициализируете их одновременно, следуя общему руководству C ++.объявить как можно ближе к использованию сайта.Например, отметьте использование констант в следующей локальной области:
for (auto it = v.begin(), end = v.end(); it != end; ++it)
{
const Foo & x = *it;
const std::size_t n = x.get_number_of_bars();
// use x and n ...
const bool res = gobble(x, zip(n));
if (res && shmargle(x)) { return 8; }
}
Здесь компилятор может даже вообще не создавать специальный код для переменных, если их значение уже известно с помощью других средств.