Подтвердить что ты не робот

В С++ 0x есть что-то вроде static_assert, которое дает предупреждение вместо ошибки?

Я хотел бы сделать это для использования, которое может быть неэффективным, но не обязательно неправильным.

4b9b3361

Ответ 2

Нет.

Ошибка утверждения указывает на проблему, препятствующую выполнению программы (будь то выполнение [утверждения во время выполнения] или компиляция [статические утверждения]).

По правде говоря, реализации разрешено делать что угодно, пока они испускают диагностику (включая продолжающееся выполнение). Но на практике основные инструментальные цепочки будут вести себя примерно одинаково: они будут ошибочными. Вы, конечно же, не можете взломать их на что-то определенное пользователем.

Ответ 3

Не как стандарт, нет. Во многих компиляторах вы можете найти #warning, но в большинстве случаев это не то же самое.