2009-12-02 66 views
0

Sutter和Alexandrescu的書「C++編碼標準」第62條是「不允許異常跨模塊邊界傳播」。我們應該遵循C++/CLI中的相同規則嗎?C++/CLI中模塊邊界的異常

回答

2

如果你在管理方面工作,你會想要關注standard guidance for exception handling in .NET

在C++/CLI的本機端工作時,遵循標準的C++指導是一個不錯的主意,其中包括試圖防止異常跨越模塊邊界。

+0

你可以給出一個精確的定義:「在[託管/本地]方面工作」是指在原始問題的背景下? – Jet 2009-12-02 18:36:49

+2

那麼,當您使用C++/CLI時,您可以編寫將使用CLR(託管)執行的代碼,或者是原生編譯代碼。關於C++/CLI的好處是它們可以混合在一個exe或dll文件中。在編寫託管代碼(ref class ...等)時,基本上使用C++編寫.NET代碼。在這種情況下,請遵循.NET約定。如果您在C++/CLI項目中執行標準C++,那麼您需要遵循C++約定。 – 2009-12-02 18:51:43

0

只要你在模塊邊界的兩側都是.NET,異常傳播是安全的 - 這是使用.NET的一個要點。