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