Эквивалент C++ «составной литерал c23». Каковы недостатки его существования в области C++? (P2174) [закрыто]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Эквивалент C++ «составной литерал c23». Каковы недостатки его существования в области C++? (P2174) [закрыто]

Сообщение Anonymous »

[P2174] Составные литералы

https://wg21.link/P2174
EWG приостановила рассмотрение этого предложения в ноябре 2022 года.

https://github.com/cplusplus/papers/iss ... 1308098822
Я думаю, автор настолько умен, что придумайте выражение «приведения», чтобы превратить braced-init-list в lvalue, чтобы можно было выполнить сахар кода, например c23 >составные литералы...

Код: Выделить всё

char *ptr = strcat((char [100]){0}, "like this");
Я думаю, что этот подход даже независим от [P2752], braced-init -list теперь имеет возможность оптимизации продвижения статического хранилища с ограниченным доступом, как и раньше.

[P2752] Статическое хранилище для инициализаторов в фигурных скобках

https://wg21.link/P2752
[P2752] даже сейчас уже увлекся c++26 в прошлом году (2023).

https://github.com/cplusplus/papers/iss ... 1591576390
Учитывая это, если в c++26 кандидат braced-init-list считается безопасно поддерживаемым < strong>статическое хранилище, не будет ли просто «иметь смысл», что его «приведение» - это просто lvalue > скопировано из него в данном конкретном случае?

Каковы недостатки этого «приведения» подхода или даже каковы недостатки c23-подобного составные литералы являются сахаром кода в области c++?
Если это кажется менее полезным, чем обычно, потому что вы просто не пишете указатель api daily, откройте свой разум и посмотрите выступление C23 в ACCU Дэвида Залевского, прокрутите до 16:35 минут.

Подробнее здесь: https://stackoverflow.com/questions/788 ... existing-i
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»