Я переношу некоторую кодовую базу C++ из Windows VC10 в Mac XCode 10.7. У меня есть макрос, который обертывает «assert()». У компилятора Microsoft нет проблем со следующим определением :XCode C++ утверждать, что переопределение не разрешено компилятором
void assert(bool result, const char *call, const char *file, int line);
/// Wraps \c assert().//
#define MY_ASSERT(call) (mynsp::assert((call), #call, __FILE__, __LINE__))
в то время как XCode бросает мне ошибку: Слишком много аргументов, чтобы функционировать, как вызов макроса
Будучи полным нубом в OS X и LLVM мой вопрос заключается в том, чтобы обойти эту проблему?
Btw, утверждает() декларация обернута пользовательское пространство имен (mynsp)
Работает отлично с G ++. Сколько аргументов вы передаете макросу? – thokra
У вас есть '' включен где-то? –
jrok
Нет, у меня нет. Должен ли я? –