天天看點

C++程式設計規範之28:優先使用++和—的标準形式。優先調用字首形式

摘要:

    如果定義++c,也要定義c++:遞增和遞減操作符很麻煩,因為它們都有字首和字尾形式,而兩種形式語義又略有不同。定義operator ++和operator –時,應該模仿它們對應的内置操作符,如果不需要原值,應該優先調用字首版本。

    對于++和—而言,字尾形式傳回的是原值,而字首形式傳回的是操作後的新值。應該用字首形式實作字尾形式,标準形式是:

    是以,在調用代碼時,要優先使用字首形式,除非确實需要字尾形式傳回的原值。字首形式在語義上與字尾形式是等價的,輸入工作量也相當,隻是效率會略高一些,因為字首形式少建立了一個對象。這不是不成熟的優化,這是在避免不成熟的劣化。

繼續閱讀