這種問題,寫兩行比寫一行,更有助於調試。把裡面的那個表達式,賦給一個內存變量,然後在後面再使用這個內存調用下一個函數,如果出錯,那麽錯誤就會定位在相應的行上,此時就知道問題出在哪,若像你現在這樣,出錯了,就不知道到底是兩個函數的哪一個出問題。就是學C的追求效率狂,以爲把代碼都擠在一起很高明,殊不知那是很影響程序可維護性的,你排錯,也得把它們重新分拆了看,與其在遲早要分拆,幹嘛不直接在源代碼中分拆了,編譯器和運行時會做優化,不需要你在源代碼中做“無謂的過早優化”,這是C++編程規範中的其中一條規範。
在實踐中,如果你按我說的這樣寫,若有人嘲笑你的代碼差,那就基本可以斷定此人素質不高,九成是沒多少實戰經驗的。
[
本帖最后由 TonyDeng 于 2014-5-8 14:02 编辑 ]