編程書籍教程等有哪些常見的錯誤或者不準確的地方?
書籍中,網路上的教程,老師講的等等有哪些常見的錯誤或不準確的地方?
比如說: 和* 被翻譯成取地址取值。(我是個新手,據我的理解,reference與dereference 引用與解引用,翻譯成取地址取值在一級指針里很好理解,但在二級指針里就說不通了。說的不對的請大神指正。)請詳細說明錯在了什麼地方,這個錯誤會對學習的人產生怎樣的不良影響?這個問題旨在幫新手少走些彎路,所以請寫的詳細些。
我見過國內的一本C++書,從頭到尾沒有const。連構造函數和operator=的參數都是T,相信不是個案。
那些教C++卻讓你從C學起,最後補充一點點C++的做法,更不是個案。
另外,和*就是取地址和取值啊
分不清重載overload與覆寫override。
就我的C++課本來說:1.奉VC++6.0為最常用、最好用的「編譯系統」;2.2007年的書連C++98都跟不上;3.分不清C++兼容C的部分和C;4.分不清編譯期常量和運行期常量;5.分不清二義性、未明確行為和未定義行為;6.不教RAII。
濫用「常量」。例如「字元串常量」,應該叫「字元串字面值(string literal)」(據說甚至連中文版的 C++ Primer 也犯了這個錯誤)。C++ 標準中只有 constant expression。
The term 「literal」 generally designates, in this International Standard, those tokens that are called 「constants」 in ISO C.
自問自答一下吧:
1.照搬下《C和指針》里關於遞歸的段落。
許多教科書把計算結成和斐波那契數列用來說明遞歸,這是非常不幸的,在第一個例子里,遞歸併沒有提供任何優越之處。在第2個例子中,它的效率之低是非常恐怖的。 【以前的書上,老師講的都是「 一個不好的遞歸會很快耗盡計算機資源」,以前以為死循環的遞歸才是不好的遞歸,遞歸和循環也沒差不多,看到這才明白濫用遞歸的危害。 一面強調不好的遞歸,一面用不好的遞歸做例子,這尼瑪。 換個和斐波那契數列一樣容易理解的例子並不難吧?】2. 內存四區模型還好吧,二級指針,char ch;char *pch=ch;char **p=pch;
*p就是取二級指針的值,也就是pch也就是ch的地址,
------------我感覺最扯的是static,靜態,無法想像那個和靜有什麼關係,卧艹,垃圾。請看詳細內容。
Unity 5.x創造2D手機遊戲(雙色)2017年2月13日購於深圳市中心書城,立即開始學習。
進行至第52頁的學習時,一個入門級的腳本,卻有著致命的錯誤,花了我兩三天的時間才知道是什麼一回事。
事例如下:在工程目錄管理的目錄中新建一個腳本的文件名為:PixelPerfect-Camera.cs的C#腳本。然後在接下來的源代碼教程中第3行書面原碼卻是:Public Class PiexelPerfectCamera : MonoBehaviour
這個腳本因為我是零基礎。出現了不能調用的問題, 搞得我還重新速閱了一篇關於C#文法的手冊。沒有得出結果。最後是關於文字相似性的聯繫,讓我覺得這行代碼中的P開頭字元與文件名極相似。會不會是這裡未能一致而造成的呢。結果是肯定的。而且,一個錯誤的更正過程還因為是兩處錯誤同時發生,令我浪費了非常多的時間來修復。首先,如果我把第3行語句中的PiexelPerfectCamera換成文件名PixelPerfact-Camera是不可行的。因為在Class後面定義的字元中不能包含「-」這樣的標點符號。這裡又讓我鬱悶好一陣子。後來在其它書上看才弄懂了這原因。就把第3行的原字元,改成文件名。才得以調用到該章節所說的正交攝像機的對像里。我不做人身攻擊,但我內心是罵娘的。
AT 譚浩強
個人覺得最不準確莫過於,不愛舉例子。幾乎不舉跟生活有關的例子,一個概念的提出就是為了解決問題的,不舉例子我還得自行腦補
和*就該翻譯成取地址以及取值,引用和解引用反而是不好的翻譯二級指針的值是一個一級指針
我說一下現在國內的PHP書。
60%以上從頭到尾不提class。
90%以上不提namespace。
然而並沒有用,
因為PHP太簡單了,簡單的跟java一樣……有心學的兩個小時就會了。i+++++i
推薦閱讀:
※datastore.edb 文件是做什麼用的 刪掉會不會有影響?
※win10服務主機本地系統佔用大量CPU怎麼解決?
※買神舟戰神可能會遇見哪些問題?
※驅動人生的ldrvpro64.sys導致大範圍電腦藍屏?
※電腦鍵盤的很多按鍵上有英文縮寫,分別代表什麼?