Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

Macro BOOST_CONTRACT_NO_CONSTRUCTORS

BOOST_CONTRACT_NO_CONSTRUCTORS — Automatically defined by this library when contracts are not checked for constructors.

Synopsis

// In header: <boost/contract/core/config.hpp>

BOOST_CONTRACT_NO_CONSTRUCTORS

Description

This macro is not a configuration macro and this library will generate a compile-time error if users try to define it directly. This library will automatically define this macro when users define all BOOST_CONTRACT_NO_INVARIANTS, BOOST_CONTRACT_NO_POSTCONDITIONS, and BOOST_CONTRACT_NO_EXCEPTS. Users can manually program #ifndef statements in their code using this macro to completely disable compilation of contracts for constructors or use the macros defined in boost/contract_macro.hpp (recommended only for applications where it is truly necessary to completely remove contract code compilation from production code).

[Note] Note

Constructor preconditions are checked separately by boost::contract::constructor_precondition so they are disabled by BOOST_CONTRACT_NO_PRECONDITIONS instead.

See Also:

Constructors, Disable Contract Compilation


PrevUpHomeNext