C++學習指南

C/C++學習指南

本書簡介

一部C/C++語言的基礎語法教程,面向零基礎的初學者。C++是在C語言的基礎上做了部分修改和擴展。本書的前半部分(1-19章)主要是C語言部分,而後半部分(20-31章)則是C++對C語言的擴展。

本書從實際工程需要出發,介紹了一個C/C++從業人員所必需掌握的全部語法、核心概念和基本技能,消除了學習考試與實際工作之間的差距。具體地講,書中不僅介紹了函數、指針、結構體、類等基本語法,也介紹了“傳值與傳地址”、“字符串”、“深拷貝與淺拷貝”、“動態創建對象”、“安全地使用指針”、“面向對象編程思想”等核心概念。同時,書中還講解了初級程序員所必須掌握的知識和技術,如“單步調試”,“編碼規範”,ANSI函數庫,文件操作,標準模板庫STL的使用。

本書配備免費的全套視頻教程,在線題庫及解析,可結合紙質教材同步使用。書中的近300個示例的源碼、以及所有相關資料均可在官網http://afanihao.cn上獲取。

前言

一、背景

作為一個有十餘年軟件開發背景的從業人員,作者在招聘面試中發現,現在的絕大多數應聘者往往缺少基本的語法基礎和實際的動手能力,更不用說對核心概念的理解了。這似乎表明現有的教材或教育方法,與實際的工作要求之間存在著比較嚴重的脫節。

因此,作者希望創建一套全新的、完整的、立體的學習體系,讓學員能夠打下牢固的語法基礎,建立對核心概念的正確認識,並掌握基本的動手能力。這套體系包含紙質教程、視頻教程、在線題庫、進階教程四大要素。

二、本書特點

本書是目標體系的一個組成部分,它也可以獨立地使用。就這部紙質教材的特點來說,有以下幾條:

①主次分明

C/C++的語法繁多,有些語法是過時的,有些語法很難但工作中並不常用。因此,為了避免給初學者帶來不必要的干擾,書中對非重點的章節採用星號標註,並顯式地說明這個章節是不重要的、或者是過時的、或者是第一遍學習的時候可以跳過的。

② 引例

在開始講解每一章之前,通常會有一個引例,其作用是引起讀者的對某個背景問題的思考。引例描述了一個語法產生的背景,使讀者自然而然地理解本章引入的新概念。

③ 鋪墊與銜接

本書各章節前後邏輯相承,一環連接一環。讀者只要按順序學習,就可以很容易地從最簡單的概念過渡到複雜的概念。最終的效果是,讀者會感覺整個學習過程中沒有太難的東西。值得強調地是,如果讀者不按順序學習的話,則學習難度加倍。例如,如果讀者不學習第3,4,5章,則難以讀懂第8,9,10章。反之,如果按順序學習則可以不知不覺地通過。

本書在編排上注重銜接。例如,第19章起承上啟下的作用,使讀者可以很容易地從C語言的struct過渡到C++的class。

④ 動手能力

第16,17章中介紹了標準C函數庫的使用,第30章介紹了標準模板庫的使用,它們都是實際工作中所必須掌握、常用而且重要的知識。

同時,在正文及附錄中加強對同學動手能力的培訓,強調良好的編碼規範,強調自己動手建立項目、並掌握調試技術。

⑤ 核心概念

C/C++中的核心概念包括:“傳值與傳地址”、“字符串”、“深拷貝與淺拷貝”、“動態創建對象”、“安全地使用指針”、“面向對象編程思想”等等。實際上,如果不深刻理解這些核心概念,就無法寫出正確地程序。所以,本書在合適地位置講解了這些概念,使得同學不必再搜尋別的輔導教材,就可以在學習基本語法的同時掌握這些核心概念。

⑥ 充分的示例

本書中插入了近300個示例,為了保證示例的正確性,每個示例都經過作者驗證,並且可以在官網上獲取完整的示例源碼。

⑦ 在線題庫

本書使用在線題庫的方式提供習題,習題按四星級難度標註,一星為基本練習,三星最難,四星為工業級應用題。每題配備提示、答案或解析,使得讀者可以檢驗自己的思路是否合理。

三、其他

讀者在學習完基本的語法之後,可以選擇繼續學習進階類教程,使自己具備一個軟件開發從業人員的基本素質。


分享到:


相關文章: