我有一個獲取傳遞給它的ostream的函數。我需要測試ostream以確保它能正常工作。我把print語句放在try語句塊中,用catch語句來捕獲所有的異常。現在爲了測試這是否可行,我需要一些幫助來創建一個不好的ostream來傳遞函數。需要關於如何測試傳遞給函數的ostream的幫助/建議
我嘗試這樣做:
filebuf buffer;
ostream& out = ostream(&buffer);
test1.print(out);
但是當我測試它,我不能去打印我的錯誤信息。什麼是更好的方式來創建一個壞的ostream傳遞給函數。
此外,有沒有更好的方法來檢查ostream比使用try-catch塊?
檢查什麼?定義「壞」。什麼樣的錯誤信息? –
ostream.bad()會告訴你流的狀態 –
'bad'不檢查失敗位,所以它不常用。 –