利用斷言來檢測調用的子函數的前置條件。
包含#include<cassert>
用函數assert來判斷條件是否符合。assert(c>150)
當C大於150的時候,即括號裏面的條件爲真,則不採取任何行動。當條件爲假時,則顯示一條錯誤的消息。
簡單代碼介紹
#include<iostream>
#include<cassert>
using namespace std;
int add(int a, int b);
void main()
{
int a = 11;
int b = 5;
//int b=15;
//assert(b > 10);
int c = add(a, b);
cout << c << endl;
getchar();
}
int add(int a, int b)
//前置條件是b必須爲大於10的數,
//防止在中調用的時候錯用b的值,
//應該在子函數中或者在主函數中加入斷言函數,來判斷。
{
int c = a + b;
assert(b > 10);
return (c);
}