14
雖然經歷了的C++ 0x的工作草案最後編輯我發現很多「noexcept」與「拋出:無」
- 去除關鍵字
noexcept
- 除了文本的的拋出:無在相同的地方
反之亦然。只是一些例子:
- 更換
noexcept
對拋出:沒什麼:20.6.4指針安全[util.dynamic.safety]template<class T> T*undeclare_reachable(T*p);
- 添加
noexcept
:20.6.3.2。指針性狀成員函數[pointer.traits.functions]:static pointer pointer_trait<T*>::pointer_to(...) noexcept;
的問題在這裏:
- 是否有一個一般的規則/模式,我們會發現
noexcept
與拋出:無在Std-Lib? - 用戶是否應該根據給定的規則導出特定行爲?即當他們他們應該或不應該添加
noexcept
到自己的功能?
我明白了。艱難的處境。我想我會讀一點多在WG21論文準備自己的到來,如*問題:「當我要補充'noexcept'我自己的職能?」 * N3279是一個很好的切入點。你還有什麼?例如,目前我建議'swap'應在用戶代碼'noexcept',並計劃按照有關*動指派*文學等用戶應該紀念他們的'noexcept'或者是隱含的假設就夠了嗎?我們可以期望編譯器從用戶那裏獲得(某天)的任何內容嗎? – towi 2011-04-22 14:33:38
我目前沒有訪問實現noexcept的編譯器。所以我對這件事沒有任何個人建議(實驗對我來說很重要)。你可以在這裏找到所有WG21論文:http://www.open-std.org/jtc1/sc22/wg21/docs/papers/ – 2011-04-22 14:52:33
謝謝,我將密切關注編譯器的筆記。是的,我深入到那些文件已經:-) – towi 2011-04-22 15:15:08