Poichè non sono soddisfatto del comportamento di assert, me ne sono scritto uno io ma ho qualche problema...
codice:
#define ASSERT(expression) \
if (!(expression)){ \
string __ASSERT_ERROR_TEXT__ = ""; \
char * __ASSERT_LINE_ERROR__; itoa(__LINE__,__ASSERT_LINE_ERROR__,10); \
__ASSERT_ERROR_TEXT__ += (string)"ASSERT has failed the follow assertion:\n " + \
#expression + "\n\nIn file: " + __FILE__ + "\nAt line: " + __ASSERT_LINE_ERROR__; \
MessageBoxA(0, &__ASSERT_ERROR_TEXT__[0],"Assert failure", 0); \
}
int main()
{
int aaa;
cout << "inserire: ";
cin >> aaa;
ASSERT( aaa > 0);
char p;
cin >> p;
return 0;
}
infatti se inserisco un numero minore di zero, crasha, quindi immagino che ho sbagliato qualcosa nel define... cosa??
grazue