คำถามติดแท็ก finally

16
C ++ รองรับการบล็อก 'ที่สุด' หรือไม่? (และนี่คือ 'RAII' ที่ฉันคอยฟัง?)
C ++ รองรับการบล็อก ' ที่สุด ' หรือไม่? อะไรคือ สำนวน RAII ? อะไรคือความแตกต่างระหว่างคำสั่ง RAII ของ C ++ กับการใช้คำสั่ง 'C' ?
272 c++  exception  raii  finally  c++-faq 

6
'ในที่สุด' จะดำเนินการใน Python เสมอหรือไม่?
สำหรับการบล็อกการลองสุดท้ายที่เป็นไปได้ใน Python จะรับประกันfinallyได้หรือไม่ว่าบล็อกจะถูกเรียกใช้งานเสมอ ตัวอย่างเช่นสมมติว่าฉันกลับมาขณะอยู่ในexceptบล็อก: try: 1/0 except ZeroDivisionError: return finally: print("Does this code run?") หรือบางทีฉันอาจจะเพิ่มException: try: 1/0 except ZeroDivisionError: raise finally: print("What about this code?") การทดสอบแสดงให้เห็นว่ามีfinallyการดำเนินการสำหรับตัวอย่างข้างต้น แต่ฉันคิดว่ามีสถานการณ์อื่น ๆ ที่ฉันไม่ได้นึกถึง มีสถานการณ์ใดบ้างที่finallyบล็อกไม่สามารถดำเนินการใน Python ได้

11
Java Try Catch สุดท้ายบล็อกโดยไม่จับ
ฉันกำลังตรวจสอบโค้ดใหม่ โปรแกรมมีการทดลองและบล็อกสุดท้ายเท่านั้น เนื่องจากบล็อก catch ถูกแยกออกการ try block จะทำงานอย่างไรหากพบข้อยกเว้นหรือสิ่งใดที่สามารถโยนได้ มันไปที่บล็อกสุดท้ายโดยตรงหรือไม่?


4
การใช้คำสั่ง python“ with” กับ try-except block
นี่เป็นวิธีที่ถูกต้องในการใช้คำสั่ง python "with" ร่วมกับ try-except block หรือไม่: try: with open("file", "r") as f: line = f.readline() except IOError: <whatever> หากเป็นเช่นนั้นให้พิจารณาวิธีการทำสิ่งต่างๆแบบเก่า: try: f = open("file", "r") line = f.readline() except IOError: <whatever> finally: f.close() ประโยชน์หลักของคำสั่ง "ด้วย" ตรงนี้คือเราสามารถกำจัดโค้ดสามบรรทัดได้หรือไม่? ดูเหมือนว่าจะไม่น่าสนใจสำหรับฉันสำหรับกรณีการใช้งานนี้ (แม้ว่าฉันจะเข้าใจว่าคำสั่ง "ด้วย" มีประโยชน์อื่น ๆ ) แก้ไข: การทำงานของโค้ดสองบล็อกข้างต้นเหมือนกันหรือไม่ แก้ไข 2: คำตอบสองสามข้อแรกมักพูดถึงประโยชน์ของการใช้ "กับ" แต่ดูเหมือนว่าจะมีประโยชน์เพียงเล็กน้อยที่นี่ เราทุกคน …

15
โยนข้อยกเว้นในบล็อกสุดท้าย
มีวิธีที่สวยงามในการจัดการข้อยกเว้นที่เกิดขึ้นในfinallyบล็อกหรือไม่? ตัวอย่างเช่น: try { // Use the resource. } catch( Exception ex ) { // Problem with the resource. } finally { try{ resource.close(); } catch( Exception ex ) { // Could not close the resource? } } คุณจะหลีกเลี่ยงtry/ catchในfinallyบล็อกได้อย่างไร?

11
ทำไมเราถึงใช้บล็อกในที่สุด?
เท่าที่ฉันสามารถบอกได้ข้อมูลโค้ดทั้งสองต่อไปนี้จะมีจุดประสงค์เดียวกัน ทำไมต้องfinallyบล็อกเลย? รหัส A: try { /* Some code */ } catch { /* Exception handling code */ } finally { /* Cleanup code */ } รหัส B: try { /* Some code */ } catch { /* Exception handling code */ } // Cleanup code
91 java  .net  finally 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.