Есть ли какая-либо польза для ссылок на constexpr? - PullRequest
1 голос
/ 02 ноября 2019

Как видно из заголовка, есть ли полезный случай для ссылок на constexpr? Вот так:

static const int myvar = myfunc();  // myfunc is not constexpr
constexpr const int& myref = myvar;

myref нельзя использовать там, где в любом случае ожидается постоянное выражение, потому что переменная, на которую он ссылается, не является константным выражением. Я не вижу, чем это отличается от:

static const int myvar = myfunc();
const int& myref = myvar;

Сгенерированные сборки, кажется, также одинаковы.

1 Ответ

0 голосов
/ 02 ноября 2019

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

...