2
我是從//構建,其中香草薩特表明明確的變換關鍵字的益處的代碼片段觀看視頻:編譯器如何隱式執行此轉換?
template< /* ... */ > class unique_ptr {
public:
// ...
explicit operator bool() const { return get() != nullptr; }
他與該關鍵字說,我們可以防止這種編譯:
use(ptr * 42); // oops, meant *(ptr) * 42
我真的不明白,showcase是如何編譯的?編譯器如何進行轉換?以什麼類型?
ptr轉換爲一個bool,它是一個整型,可以相乘。 – 2013-03-17 06:32:55
的確如此。謝謝! – Archer 2013-03-17 06:41:24