Нет, в C ++ нет спецификаторов формата для assert()
.
Кроме того, assert()
не принимает строку в качестве входных данных для начала, только скалярное значение, которое сравнивается с 0 (если тольковы думаете о static_assert
, которое может принять необязательное сообщение об ошибке, которое появляется в случае сбоя условия.
Python's assert()
выдает исключение AssertionError
.В C ++ вы можете выбросить std::exception
(или производный) объект, который вы можете создать с помощью строкового сообщения, отформатированного так, как вы хотите (используя sprintf()
, std::ostringstream
, boost::format
и т. Д.).