Результаты поиска по запросу "language-lawyer"

1 ответ

Это все еще активная проблема, в C ++ 17 по крайней мере пока ничего не изменится. Хотя, когда такой механизм запрета определен, он может задним числом рассматриваться как DR.

из моих самых любимых / злых изобретений, с которыми мне посчастливилось столкнуться, - этосчетчик constexprака с сохранением метапрограммирования. Как упоми...

6 ответов

Является ли получение адреса локальной переменной константным выражением в C ++ 11?

Следующая программа на C ++ 11: int x = 42; void f() { int y = 43; static_assert(&x < &y, "foo"); } int main() { f(); }Не компилируется с gcc 4.7, так как жалуется: error: ‘&y’ is not a constant expressionЭто согласуется с моей интуицией. ...

1 ответ

Очень приятно слышать, что мы больше не нуждаемся в повторном объявлении! Я проверил с gcc 7.1.0 / C ++ 17 и да, я просто могу удалить определение. Поэтому я переключу все свои проекты на c ++ 17 :-) Язык движется в правильном направлении!

я хочу использовать некоторые удобные вещи, такие как

ТОП публикаций

1 ответ

81176

отрим пример:

1 ответ

, До C ++ 17 простое включение заголовка уже вызывало неопределенное поведение.

оложим, у меня есть неполный тип

1 ответ

 такое лямбда-выражение?

я правильно понялаэтот ответ [https://stackoverflow.com/a/44701336/4324224]и ссылка на стандартный раздел[Dcl.type.auto.deduct-5] [http://eel.is/c++draft/dcl.spec.auto#dcl.type.auto.deduct-5], код: decltype(auto) a = e;всегда ...

0 ответов

Вот почему не вызывается никаких конструкторов.

отрим код ниже: #include <array> struct T { T() = delete; }; int main() { std::array<T, 0> a; a.size(); }Мы по умолчанию инициализируем массив размером 0. Поскольку нет элементов, нет конструктораT должен быть назван. Тем не мение,лязг ...

0 ответов

@Bathsheba Да, но это было до того, как я нашел точную цитату в стандарте: P

атривать struct base {}; struct child : base {};Хорошо известно, чтоsizeof(child) может быть 1 путем примененияоптимизация пустой базы. Теперь, однако, рассмотрим struct base {}; struct child : base {base b;};Может ли компилятор ...

0 ответов

 на язык, уточнение к существующей грамматике. Это подтверждает аргумент со спецификацией.

шал... упоминается как «распространение»синтаксиси распространениеоператор', с последним, будучи намного более популярным. URL соответствующегоДокументация ...

0 ответов

 находятся!

т ответк вопросу " [https://stackoverflow.com/a/17717142/5470596]Почему мой объект не может получить доступ к защищенным членам другого объекта, определенного в общем базовом классе?"можно прочитать:Вы можете получить доступ к защищенным членам ...