Assert 宏應(yīng)該大家都知道是干什么用的吧, 可能大家一般都用來檢查下指針為空啊。
不過assert還有許多使用技巧的。
1.基本用法
void VectorNormalize(Vec* src, Vec* dat)
{
float length;
assert(src!=0);//檢查src向量必須不為空
assert(dst!=0);//檢查dst向量必須不為空
..................
..................
}
2.讓assert嵌入更多的信息
void VectorNormalize(Vec* src, Vec* dst)
{
float length;
assert(src!=0 && "VectorNormalize: src vector pointer is Null");
assert(dst!=0 && "VectorNormalize: dst vector pointer is Null");
...................
...................
}
有了這個(gè)直觀的字符串提示,就可以告訴當(dāng)前的函數(shù)名,錯(cuò)誤原因。