一般鼓勵使用初始值設定項列表。現在讓我們假設我有以下代碼(簡單的例子,只是爲了使問題更清晰):我可以在構造函數的初始化程序列表中執行完整性檢查嗎?
class foo
{
public:
foo(ptr1* a, ptr2* b) : m_a(a), m_b(b), m_val(a->val) {}
/* code and members here */
};
我想檢查a
不是NULL它試圖取消引用它得到val
之前。有什麼方法可以在那裏進行健康檢查?
這是一個很好的妥協。然後我可以把這些斷言放在構造函數體中,並且它們實際上會正確地啓動。 (1) – Samaursa