編程書籍教程等有哪些常見的錯誤或者不準確的地方?

書籍中,網路上的教程,老師講的等等有哪些常見的錯誤或不準確的地方?

比如說: 和* 被翻譯成取地址取值。(我是個新手,據我的理解,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導致大範圍電腦藍屏?
電腦鍵盤的很多按鍵上有英文縮寫,分別代表什麼?

TAG:程序員 | 編程語言 | 書籍 | 編程 | 計算機 |