-1
我在我的節目下面的一段代碼:例外在C++與奇異數印刷
//Get key given pionter
int SLL::Get(node* pt){
try{
if(pt!=NULL){
node* temp = pt;
return temp->key;
}
else {
throw "Access the NULL pointer!!";
}
}
catch(const char *s){
cout << s << endl;
cout << "Invalid input!" << endl;
}
}
當我測試例外情況下(碼塊),它給我的以下輸出
Access the NULL pointer!!
Invalid input!
4704284
我不明白我在哪裏得到這個號碼?有趣的是,無論我運行多少次這個測試,數字都是一樣的,這意味着它可能不是一個隨機地址。如果我測試了這些非例外情況,那3條線就一起消失了。
所以,我不知道到底發生了什麼。希望有人能幫我解釋一下。謝謝!
這是一個[SSCCE](http://sscce.org)的哭聲。 – chris
輸出該數字的代碼是在上面完成的'catch'後面運行的代碼。您沒有向我們顯示該代碼。 –
我敢打賭,如果您在「catch()」塊中跨過兩個「cout's」,並且沒有在「catch()」塊的外部*步驟中看到「4704284」 ) – paulsm4