Цитата(demiurg_spb @ Aug 19 2008, 16:24)

Есть-ли какая-нибудь возможность сотворить макрос типа ASSERT,
чтобы в случае невыполнения условия вылезал error или warning на этапе компиляции?
Код
#define X 123U
ASSERT(X<10);
У меня такое никак не выходит....
Спасибо!
#define MY_ASSERT_H(a,h) typedef int my_assert_##h##_h [(a) ? 1 : 0]
#define MY_ASSERT(a) MY_ASSERT_H(a,__LINE__)
use:
#define MY_SOME_C 10
MY_ASSERT(MY_SOME_C == 10);
MY_ASSERT(sizeof(int) == 2);
Сообщение отредактировал VIII_electronix - Aug 27 2008, 16:18