In boost/mpl/assert.hpp, sah ich etwas wie folgt aus:Was bedeutet P :: ************ in Boost assert.hpp Datei?
template<class Pred>
struct eval_assert {
typedef typename extract_assert_pred<Pred>::type P;
typedef typename P::type p_type;
typedef typename ::boost::mpl::if_c<p_type::value,
AUX778076_ASSERT_ARG(assert<false>),
failed ************ P::************
>::type type;
};
Wenn die erste ************
als Zeiger der Struktur gescheitert behandelt werden können, wird die P::************
wirklich keinen Sinn für mich. Ist das Standard C++?
Ja. Es ist ein mehrstufiger Zeiger auf den Zeiger zum Mitglied von 'P'. –
(Solche verschachtelten Zeiger existieren?: /) – deviantfan
Pointerception ... –