Geçtiğimiz günlerde, C++ 'da iki türün boyutlarının eşit olduğunu kontrol etmek için derleme zamanı iddialarına sahip olma ihtiyacını buldum.C++ dilinde derleme zamanı iddiaları?
#define X_ASSERT(condition) ((void)sizeof(char[1 - 2*!!(condition)]))
Öyle gibi kullanılabilir:
Ben (Linux çekirdeğinden geldiği belirtilen) web üzerinde aşağıdaki makro bulunduX_ASSERT(sizeof(Botan::byte) != sizeof(char));
Bu beni merak alır - bu halde , çalışır, bunu yapmanın daha temiz bir yolu var mı? (Belli ki, birden fazla yol olduğu gibi) Belli yöntemlerin avantajları veya dezavantajları var mı?
sayesinde,. C++ 0x'nin "static_assert" aldığını gördüğüme sevindim, daha önce bunu okumayı hatırlamıyorum. ;) –