170 похожих чатов

Почему у объявлений функций такой рандомный разброс расположения модификаторов и

им подобных? Я имею в виду, кто-то сходу сможет сказать, в каком объявлении функции ошибка:
[[nodiscard]] const auto fun1(const int& i) noexcept const override -> std::optional<unsigned long long>;
const auto fun1(const int& i) noexcept const [[nodiscard]] -> std::optional<unsigned long long> override ;
[[maybe_unused]] const auto fun1(const int& i) const noexcept -> std::optional<unsigned long long> override;
const auto fun1(const int& i) [[maybe_unused]] const noexcept -> std::optional<unsigned long long> override;

8 ответов

8 просмотров

nodiscard и maybe unused — противоречат друг другу,

Eyed-Shovel Автор вопроса
Ilya Zviagin
nodiscard и maybe unused — противоречат друг другу...

Да, мне почему-то казалось, что оно про то, что функция может не использоваться. Но сути не меняет

Eyed Shovel
Да, мне почему-то казалось, что оно про то, что фу...

Именно так и есть, они не противоречат друг другу

Ilya Zviagin
nodiscard и maybe unused — противоречат друг другу...

Ну вот это утверждение неверно, так как nodiscard про использование возвращаемого значения, maybe_unused про то, что сама функция может не использоваться (https://en.cppreference.com/w/cpp/language/attributes/maybe_unused)

Alexander Karaev
Ну вот это утверждение неверно, так как nodiscard ...

Так любая функция может всегда не использоваться....

Ilya Zviagin
Так любая функция может всегда не использоваться.....

Может. Но не всегда это отслеживается. Но, например, на неиспользуемые static функции (internal linkage) компиляторы обычно дают предупреждение. Думаю, как раз этот случай maybe_unused на функциях покрывает

Похожие вопросы

Обсуждают сегодня

Такс, блин, таки кто-то знает, каким образом работают макросы stdin/stdout/stderr? Я влез в stdio.h, там определения нет, отладил через асмокод - вызывается функция со странны...
The Bird of Hermes
18
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Всем привет, на линуксе лучше на fasm или nasm учиться писать для начала ?
meszjol
14
Если у меня есть такой класс: Object = {} function Object:new(a_name, a_transform, a_color, a_mesh, a_material, a_shader, a_textures) local private = {} private.n...
Cuarno Vile
4
Гайз, кто-нибудь пробовал запустить probe-rs под камень, которого нет в probe-rs? Мб есть какой-нибудь пример у кого... Через target-gen попробовал сгенерировать chip-descript...
Максим Смирнов
2
было так ;void set_http_ver(RESPD* ptr, char* version, uint32_t length) // example: 'RTSP/1.1 ' set_http_ver: mov eax, [esp + 4] mov ecx, [esp + 8] ...
Mixail Frolov
5
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
зачем же переименовывать ? чтобы кол-во участников возросло или вдруг IBM от этого снова на свифте начнет кодить ? Я не понимаю что страшного в том что свифт гавно, если это т...
Oleh Nerzh
10
здравствуйте. совершаю вот такую вещь: strcpy(line, (char)current_number); где current number — неподписанный шорт, line — массив чаров. ругань следующая: main.c:29:30: error...
Roberto's Ширгозиев
13
Карта сайта