在C 11 中,透過引入明確運算子bool,safe-bool 慣用法的必要性已經過時() 常數。根據C 標準第4 節[conv] p3:
表達式e 可以隱式轉換為類型T 當且僅當聲明T t=e;格式良好[...]
這表示如果宣告bool t(e); 則表達式可以根據上下文轉換為bool
某些語言結構需要此類隱式轉換,包括:
因此,有了顯式轉換運算子的可用性,就沒有必要訴諸複雜的safe-bool 實現。這顯著簡化和澄清了程式碼,因為與 safe-bool 習慣用法的隱式機制相比,顯式轉換提供了清晰且有意的類型轉換。
以上是Safe-Bool 慣用法在 C 11 中仍有必要嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!