Информация об изменениях

Сообщение Re: Как записать такое в современном C++? от 12.08.2024 0:35

Изменено 12.08.2024 0:38 Умака Кумакаки

Re: Как записать такое в современном C++?
Здравствуйте, Alekzander, Вы писали:

A>Как это записать в современном C++, чтобы не было performance penalty? Без конструирования контейнера и т.п. Нормальных макросов же (как в Немерле), насколько я понимаю, не завезли?


в с++23 можно так:

if (std::ranges::contains(std::array{
  EAGAIN,
  EWOULDBLOCK,
  EINTR,
  ENOSPC,
  ENOBUFS,
  ENOMEM
}, errno) {
  // 
};
Re: Как записать такое в современном C++?
Здравствуйте, Alekzander, Вы писали:

A>Как это записать в современном C++, чтобы не было performance penalty? Без конструирования контейнера и т.п. Нормальных макросов же (как в Немерле), насколько я понимаю, не завезли?


в с++23 можно так:

if (std::ranges::contains(std::array{
  EAGAIN,
  EWOULDBLOCK,
  EINTR,
  ENOSPC,
  ENOBUFS,
  ENOMEM
}, errno)) {
  // 
};