throw

    10熱度

    5回答

    我知道我從析構函數中拋出異常。 如果我的析構函數調用了一個可以拋出異常的函數,那麼如果我在析構函數中捕獲它並且不要進一步拋出它嗎?或者它可以導致異常終止,我不應該從析構函數調用這些函數?

    11熱度

    4回答

    聲明可能的異常從C++函數中拋出有什麼好處?換句話說,添加關鍵字throw()究竟做了什麼? 我讀過函數聲明,如void do_something() throw();應該保證沒有例外來自do_something()函數;然而,這似乎並不適用於do_something()內所稱的功能,因此使其成爲弱保證。 請概述效用(和最佳使用案例)這種語言功能。

    11熱度

    5回答

    我知道這可能並不重要,但我想知道什麼是正確的。 如果一段代碼包含某個版本的throw new SomeKindOfException()。我們是否說這段代碼可能會引發異常?或拋出異常? 的關鍵詞是throw,所以我對那樣的傾斜,而是拋出一個異常,也使用了很多... 他們有某種不同的含義?他們其中之一是否會在另一方面造成差異?還是僅僅兩個詞意味着完全一樣的東西?

    20熱度

    6回答

    我正在用C#編寫一個自定義類,如果人們在某些方法中給出錯誤的輸入,我會拋出一些例外。如果拋出異常,拋出後方法中的任何代碼是否仍然會被執行?在投擲之後我是否必須休息一下,還是一定要拋出這個方法?

    222熱度

    9回答

    我正在與同事討論拋出構造函數的異常,並且認爲我想要一些反饋。 從設計的角度來看,從構造函數中拋出異常可以嗎? 可以說,我在一個類中封裝POSIX互斥體,它會是這個樣子: class Mutex { public: Mutex() { if (pthread_mutex_init(&mutex_, 0) != 0) { throw MutexInitExceptio