c++ top-level const

????????這不是一個什么新的概念,只是在中文譯本里很少見到,與之相對的還有一個叫l(wèi)ow-level?const。網(wǎng)上查了下‘top-level?const’和‘low-level?const’對應(yīng)的中文翻譯分別?‘頂層?const’ 和‘底層?const’。筆者認(rèn)為,不管是英文還是中文翻譯,我們目的是能掌握它們的用法。
????????順便說一下,作為一個c++編程人員,印象當(dāng)中或多或少還記得類似‘const修飾的指針不可以修改和const指針指向的內(nèi)容不可變’這樣的話,筆者當(dāng)年也被困惑良久,或許就是因為這個極其難以區(qū)分并且念起來又很拗口的因素,將很多人拒于c++學(xué)習(xí)門外。
????????C++ Primer 5版第64頁中間有這么一句話:“More generally, top-level const indicates that an object itself is const”。通過這句話可以得出這樣的規(guī)則:
先判斷const修飾的對象本身是不是只讀的,如果是只讀的,那么屬于top-level const,否則就是low-level const。
例子
了解上面規(guī)則,在實際的工作中已經(jīng)夠用了。內(nèi)容雖然不多,但也不好掌握,需要多點耐心多看多用。
水平有限,歡迎交流指正。