🚨週年慶最後三日🚨全站課程 83 折、最後加碼 $899💰 再送激高 $1600 券❗️
天
時
分
全站 83 折🔥
登入/註冊
開啟程式設計之門 - C++ 核心課程
0 seconds of 2 minutes, 27 secondsVolume 0%
Press shift question mark to access a list of keyboard shortcuts
鍵盤快捷鍵
播放/暫停空白鍵
音量增加↑
音量減少↓
快進 5 秒→
倒退 5 秒←
開啟/關閉字幕c
全螢幕/離開全螢幕f
靜音/取消靜音m
Decrease Caption Size-
Increase Caption Size+ or =
跳轉至%0-9
00:00
00:00
02:27
 
Kevin

開啟程式設計之門 - C++ 核心課程

C++ 程式設計課程,以系統性的方式帶你理解 C++ 的觀念與實務應用。課堂將教你程式設計的方法,並且帶你以物件導向的概念設計員工銷貨、管理等實務應用系統,讓 C++ 成為你踏入程式設計領域的入門語言。
Hahow AI 學習升級
1,655 人已購買
4.9
(106)

關於課程

課程包含

包含 15 章 46 單元、6 項作業

課程時長

9 時 3 分鐘

課程總人數

1655 位同學

觀看限制

不限觀看次數,還會附贈完課證書

學習升級

Hahow AI 學習助教
無需額外付費
即時問答、重點整理、測驗理解,讓知識派上用場

課程內容

課程緣起

本課程希望讓同學系統性學習 C++,掌握 C++ 核心概念,並有能力解決實務問題。

什麼是 C++

C++ 是一種廣泛使用的電腦程式語言。它是一種通用程式語言,支援多重程式設計模式,例如程序化程式設計、資料抽象化、物件導向程式設計等。相較於 C,C++ 兼具了效率與彈性並且支援物件導向,在 app 開發、遊戲開發、網頁瀏覽器、編譯器等,都可以看到 C++ 的身影。

學習 C++ 有什麼優勢?

物件導向概念

程式語言互動示意圖以 C++ 為中心,透過雙向箭頭連結 Python、Java、PHP、C# 與 JS,呈現多種程式語言之間的整合與交流。

C++ 物件導向概念廣泛地應用在高階語言中(Python , Java, C# 等),因此學好 C++ 未來學習其他語言自然能如魚得水。這也是為什麼 C++ 是許多大專院校基礎程式設計的教學語言,本課程希望透過 C++ 幫同學打好程式基礎,開啟程式學習之門。

熟悉演算法的應用

齒輪關聯示意圖以「演算法」、C++、python 與「實際問題」為核心,呈現程式語言與演算法相互連結,逐步應用於解決實際問題的流程。

高階語言如 Python 固然有更高的產能,語法也較簡潔優雅。以排序為例在 Python 中只需乎叫 sort( ) 函數一行程式碼就可以完成排序,使用者甚至不需知道函式如何運作,然而排序有 selection sort, insertion sort, quick sort 等方法,效率也不盡相同。

學習 C++ 雖沒有 Python 輕鬆,卻能更扎實理解程式運作原理與解決問題的方法,有利於面對新問題時,能靈活運用這些原理和方法讓問題迎刃而解,這些技巧也能運用在其他語言上。當然 C++ 也提供強大的 STL ( Standard Template Library ) 函式庫增加開發效率和產能。

執行效率高

「執行時間」折線圖比較 Python 與 C++:排序個數從 1,000、10,000 增至 100,000 時,Python 執行時間由約 190 毫秒升至 5,854 毫秒,C++ 則由 90 毫秒升至 312 毫秒。

C++ 為需要編譯成可執行程序語言,執行效率較現今相當熱門的 Python(腳本語言)更快,適合大型物件開發。上圖為用 C++ 和 Python 實作快速排序法為例分別排序 1000, 10000, 100000 個亂數為例,例子中 C++ 執行效率快約 10-20 倍(可參考:程式碼連結)

使用範圍廣泛

中央電腦螢幕標示「C++」,白色連線延伸至 Safari、Spotify、Visual Studio、Google Chrome 與音樂播放器圖示,呈現多種軟體相連的科技主題插畫。

C++ 應用範圍相當廣泛,大量使用在遊戲開發、應用程式開發等領域:

  • 遊戲開發 — 如 OpenGL 3D 遊戲引擎開發
  • 瀏覽器開發 — 如 Chrome, Safari, Firefox 等使用 C++ 開發
  • 應用程式開發 — 如 Microsoft Office 系列 , iTunes 等使用 C++ 開發

Python 則擅長大數據、機器學習、網頁爬蟲等領域。

軟硬兼具

C++ 函式 ReadMemory() 透過 Memclass.readMem 讀取敵人與玩家記憶體,取得 BoneMatrix、ClientState、vecOrigin 和 vecViewOffset,計算玩家眼睛位置及敵人骨骼座標。

(範例:利用 C++ 函數讀取遊戲記憶體位置)

C++ 可以開發應用程式亦可以做硬體控制,熟悉之後將對 IT 領域有一定的理解。

多數程式課程不能有效幫助同學的原因

  • 重點觀念快速帶過,學生未能吸收語法概念,只是盲目的跟著講者敲代碼 ,想複習時程式碼像無字天書
  • 未能鎖定核心內容,補充過多繁瑣的進階內容反而模糊學習焦點
  • 上完課學到的都是課本範例,無法解決實務問題
Kevin 在摸索 C++ 過程中,利用許多 C++ 教學資源,然而因學校和坊間 C++ 資源上述幾點問題,學習效果不如預期 。希望藉由自己的學習經驗以及多次教學同學寫程式的經驗,站在學生的角度用人人聽得懂的方式帶同學釐清觀念,並且跳脫課本範例解決實務問題,幫助想接觸 C++ 的朋友減短學習程式和連結實務的撞牆期。

課堂 PPT 及作業預覽

章節 11 物件導向概念 PPT

「繼承概念」示意圖以 Car 為父類別,提供 drive()、refuel();Taxi、Convertible Car 與 Self-Driving Car 繼承後,分別新增 service()、open canopy()、auto drive() 與 repower()。

C++ 畢卡索作業 - 利用迴圈產生有趣圖形

以終端機星號字元示範有趣幾何圖形程式:左側依輸入層數(限基數)生成對稱圖案,右側繪製愛心並嵌入英文訊息「My heart is with you」,可寫程式給你的他/她。

員工管理系統專題

「員工管理系統」涵蓋人員與部門管理:增加或刪除員工、新增或刪除部門,設定員工資料與績效、部門資料及企劃,並發放薪水獎金、計算達標紅利。

  • 資料架構 — 以物件導向運用繼承概念實作部門及員工資料架構
  • 功能函數 — 員工:新增員工、設定績效、計算員工獎金及紅利
  • 功能函數 — 部門 : 新增部門、設定部門資料、規劃部門企劃

課程學習地圖

C++課程學習地圖分為四個部分:第一至三章掌握C++基礎,第四至五章以結構化方式處理C++問題,第六至九章學會模組化程式設計,第十至十二章以物件導向實作專案。

第一部分:C++ 基本掌握

介紹 C++ 基礎觀念,讓同學對 C++ 有基本的掌握,並有清晰的邏輯能完成流程設計。

  • 經典 Hello World 範例

C++ 入門程式碼範例,包含 iostream 標頭檔與 std 命名空間,在 main() 函式中使用 cout 輸出「hello world」並以 endl 換行,最後 return 0。

第二部分:結構化處理 C++ 問題

從前置處理到資料結構與字串,讓同學能以結構化的方式處理複雜資料,化繁為簡解決複雜問題,並增加程式碼可讀性。

  • Pointer 範例

C++ 指標基礎範例:宣告整數 a 並設為 10,使用 int* ptr = &a 取得 a 的記憶體位址,再透過 *ptr 取值並輸出 10。

第三部分:模組化程式設計

介紹功能強大的函式和亂數問題,讓同學學會模組化的程式設計,並具備一定的程式設計能力。

  • 函式定義範例

程式碼範例定義 bool compare(int num) 函式,使用三元運算子判斷 num 是否大於 0,若為真回傳 1,否則回傳 0。

第四部份:物件導向實作專案

從檔案處裡到 C++ 物件導向的核心觀念,讓同學對物件導向 (Class) 有基本認知並具備大型程式開發的基礎,最後 Kevin 將整合前面所學的內容精心設計一個專案,並一步一步帶領同學完成,幫助同學融會貫通。

  • Class 示意程式碼

C++ 類別 entity 的定義範例:公開建構子 entity(string name) 接收名稱並指定給 EntityName,private 區域則宣告 string EntityName 成員變數。

課程特色介紹

課程規格總長320分鐘,內容涵蓋觀念講解與實務應用;每堂課長5-20分鐘,採螢幕錄製搭配PPT,並提供課堂程式碼。

課程內容

  • 課程總長約 320 分鐘,會提供課堂程式碼讓同學下載(不過建議同學跟著 Kevin 一起動手做,會比較有感覺)
  • 每堂課長 5-20 分鐘讓同學容易吸收,學習無負擔
  • 課堂包含觀念講解與實作,讓同學不只聽懂更能實際操作。課程將以螢幕錄製方式進行講解,搭配 ppt 講解核心觀念
  • 課程預計在募資結束後的兩個月開課

課程特色

課程特色包含由淺入深、輕鬆入門,搭配多實作例題與扎實練習;同時去蕪存菁、釐清核心概念,連結實務並學以致用。

  • 由淺入深,輕鬆入門:由淺入深系統性教學,讓同學從入門到進階打好基礎,輕鬆上手 C++。
  • 多實作例題,扎實練習:課堂上有趣的練習,讓學員動手實作檢測自己的學習狀況,並讓學習過程不枯燥無趣。
  • 去蕪存菁,釐清核心概念:課程鎖定核心內容,以最白話的方式包裝複雜概念,避免冷門繁鎖的補充,讓學快速掌握 C++ 要領。同學若想要了解語法詳盡內容可以至 www.cplusplus.com 網站查詢,有任何問題也歡迎留言提出。
  • 連結實務,學以致用:C++ 課程的練習內容舉凡計算最大公因式、排序問題、河內塔等較難與現實應用連結,本課程提供專案練習(如銷貨管理系統),讓同學能將所學程式技巧應用在實務問題上,增加實務能力。

適合對象

適合這堂課的學習者包括:想自學程式的同學、有基礎並希望更精進實力的人,以及想報考相關院校的人。

想自學程式的同學

對於沒基礎想自學程式的同學, C++ 將是你很好的選擇,本課程會帶你掌握核心觀念,讓你輕鬆上手 C++,你是否曾經跟著別人寫程式卻一頭霧水?快跟著 Kevin 一起釐清核心觀念。

有基礎想精進實力的人

有基礎的朋友可以藉由本課堂強化觀念,此外課程包含進階資料結構、錯誤處理技巧和完整物件導向等進階內容讓你更上一層樓。光有基礎是不夠的,需要經過大量練習才能熟練語法和融會貫通,課堂練習及作業讓同學有大量練習機會,加上實務專題如記帳、管理等應用,讓同學不只會寫程式更能解決生活問題。

想報考相關院校的人

對於想進入相關院校的同學,跟著 Kevin 的腳步打好程式基礎自然能輕鬆面對 APCS 大學程式先修檢定,課堂提及的觀念也是日後課程的重要內容(計算機概論、資料結構等),為日後學習奠定基礎。

課程收穫

「我能學到什麼」學習階梯:從 C++ 基礎語法開始,掌握程式設計的方法與解決問題的邏輯,進一步學習物件導向程式設計,培養實務操作能力。

C++ 基礎語法

同學能掌握 C++ 基礎語法,並清楚背後的原理。

剖析問題及整合程式的能力

現實問題複雜而章節的特定語法往往不夠應付,上完這堂課後,同學將有能力剖析現實問題,並使用對應技巧一一擊破,再整合成解決問題的程式碼。

物件導向程式設計

同學將具備物件導向程式設計能力,為開發大型程式奠定基礎,也是學習其他高階語言的墊腳石。

實務操作能力

同學將有能力拼湊修改 C++ 範例得到自己的程式碼,以 C++ 解決自己的問題。

課程解鎖

課程募資期間,募資人數若達標以下門檻,則解鎖以下活動。

趕快呼朋引伴,一起解鎖免費課程吧!

募資解鎖方案分為三階段:達成150%解鎖 C++ STL函式庫,達成300%解鎖 C++ 遊戲專題,達成400%解鎖 C++ 演算法實戰。

第一:募資金額 150% 解鎖 ▶ STL 函式庫

介紹 STL 進階資料結構(容器)與功能強大的函數,並帶同學實戰練習,讓你能輕鬆以 C++ 解決複雜問題 。

第二:募資金額 300% 解鎖 ▶ C++ 遊戲專題

帶同學了解遊戲運作機制和演算法,並實作一個有趣的遊戲專題

第三:募資金額 400% 解鎖 ▶ C++ 演算法實戰

活動安排問題:寫程式安排時間內最佳的活動

送貨員問題:寫程式幫助送貨人員計算最佳路徑

售後服務與課程互動

售後服務包含三項內容:課程問題由老師會盡速回答、學習成果可供其他學員討論觀摩,並依學習需求不定期補充內容。

  • 回覆問題的頻率:一週內答覆
  • 作業批改的頻率: 二到三周一次

作業設計

每個重點章節皆有作業,並在課堂最後設計一個專案。老師將會閱讀學生程式碼,在下面留言點出問題,並給予建議。

圖片來源:https://www.flaticon.com

影片背景音樂:https://www.youtube.com/watch?v=Faw8iOc3tlY

哪些人適合這堂課?
1. 想進入資訊相關系所的同學 2. 對程式有興趣卻不知如何開始 3. 不滿意學習現況,想更深入了解程式的奧妙 4. 對程式已有基本概念,想更精進程式技巧 5. 想藉由程式訓練邏輯思維 6. 有志成為軟體工程師
你可以學到
1. 掌握 C++ 語法 2. 學到解決問題的邏輯 3. 學習剖析複雜問題的能力 4. 學到程式設計的方法,成為日後程式學習的墊腳石 5. 能以物件導向概念設計員工銷貨, 管理等實務應用系統
上課前的準備
需要準備的工具 / 軟體(若購買課程前不清楚版本是否支援,請先留言與老師確認。)
1. 一顆快樂學習及勇於挑戰的心 2. 一台 mac / windows 電腦 3. 瀏覽器 4. microsoft excel (project會用到)
需要具備的背景知識
不需要基礎,有程式基礎者佳 如 C, C#, Java, Python, Javascript
單元一覽
15 章 46 單元|總時長 543 分鐘
全部展開
1
開發環境設定
影片單元
單元 1 - 認識程式與C++開發環境
2
基礎觀念篇
影片單元
單元 1 - 輸入輸出
10:12
影片單元
單元 2 - 基礎資料型態
07:47
影片單元
單元 3 - 變數命名原則
影片單元
單元 4 - 基礎運算子
12:30
影片單元
單元 5 - 資料型態轉換
05:53
影片單元
單元 6 - 常數 constant
05:26
3
流程控制和迴圈
影片單元
單元 1 - if 流程控制
07:09
影片單元
單元 2 - switch 流程控制
08:47
影片單元
單元 3 - for 迴圈
04:48
影片單元
單元 4 - while 迴圈
10:46
影片單元
單元 5 - do while 迴圈
12:17
影片單元
單元 6 - 巢狀迴圈
09:18
影片單元
單元 7 - 防呆機制
08:36
作業單元
作業 1 - C++ 畢卡索
查看作業
4
基礎資料結構
影片單元
單元 1 - 陣列
10:16
影片單元
單元 2 - 多維陣列
10:14
影片單元
單元 3 - pointer
15:58
影片單元
單元 4 - 動態陣列 vector
13:21
5
字串 string
影片單元
單元 1 - 基礎字串
06:30
影片單元
單元 2 - 字串常用操作
05:39
6
結構
影片單元
單元 1 - 結構 struct
09:11
7
函數
影片單元
單元 1 - 函數基礎
14:28
影片單元
單元 2 - 函數呼叫
10:04
影片單元
單元 3 - 函數間的相互呼叫
16:22
影片單元
單元 4 - 遞回函數
05:23
影片單元
單元 5 - 樣板函數
13:07
作業單元
作業 1 - 排序
查看作業
8
進階觀念與技巧篇
影片單元
單元 1 - 範圍 Scope
09:32
影片單元
單元 2 - 例外處理 Exception Handling
10:44
影片單元
單元 3 - 大型程式開發
12:51
9
亂數
影片單元
單元 1 - C++ 亂數
12:56
作業單元
作業 1 - 21 點
查看作業
10
檔案處理
影片單元
單元 1 - fstream 讀檔
22:41
影片單元
單元 2 - fstream 寫檔
12:58
11
物件導向
影片單元
單元 1 - 物件導向觀念
07:09
影片單元
單元 2 - 類別基礎 (上)
15:53
影片單元
單元 3 - 類別基礎(下)
09:10
影片單元
單元 4 - 類別進階 多載 overloading
13:04
影片單元
單元 5 - 類別進階 繼承 inheritance
13:56
作業單元
作業 1 - 類別實作 簡單員工管理系統
查看作業
12
project 管理系統
影片單元
單元 1 - project part-1
12:15
影片單元
單元 2 - project part-2
19:59
作業單元
作業 1 - 學習成果
查看作業
13
STL 容器
影片單元
單元 1 - Queue/Stack
12:32
影片單元
單元 2 - unordered map (hash table)
18:21
影片單元
單元 3 - unordered map 練習
19:43
作業單元
作業 1 - palindrome
查看作業
14
遊戲專題
影片單元
單元 1 - 貪食蛇( 上)
19:25
影片單元
單元 2 - 貪食蛇(下)
15:34
15
應用問題
影片單元
單元 1 - 迷宮專題(上)
11:22
影片單元
單元 2 - 迷宮專題(下)
25:56
試看單元
播放試看影片
章節 1 - 開發環境設定
單元 1 - 認識程式與C++開發環境
試看影片
07:46
播放試看影片
章節 2 - 基礎觀念篇
單元 3 - 變數命名原則
試看影片
05:25
課程評價
4.9
/ 5.0
106 則評價
gto6002019-12-30
非常推薦
工作上會用到C/C++, 由於不是資工系背景, 所以都是自己學習居多. Kevin老師的課程最棒的一點就是他有設計如何讓初學者一步一步的循序漸進. 像我雖然常常用到C++,也僅僅熟悉常用的部份, 也可以藉由這課程可以做一個整體性的學習; 更棒的是, 有些書本上講的語焉不詳之處, Kevin老師會用讓人聽得懂的方式,邊做例子邊解釋, 個人覺得這部分是很值回票價的.
Kevin
授課老師
2020-01-23
Hi 謝謝你這麼詳細的回饋跟肯定! 希望這堂課的內容跟架構有幫助同學學習和工作上 之後會不定期補充內容,希望幫助同學建立更全面的學習
查看更多
1 人覺得有幫助
東東2022-03-12
麻雀雖小,五臟俱全
其實選課前我也研究了國外的C++線上課程 類似的課程網路上很多 為什麼最後選擇hahow? 他上課時長不至於太久,500多分鐘,不到十個鐘頭,對我來說是可以接受的 程式如果真的要教可以講很多 到底哪些該課堂上說、哪些該學生上網自己深造,很考驗老師的教學安排能力 我覺得老師重點都有講到了 基本上對老師課程中教的能有基本了解,就已經有最基本的實作能力了
查看更多
1 人覺得有幫助
chocolate603332020-04-11
對初學者來說應該是很好的內容
我個人不是初學者,之前工作上用的大部分都是Java,對於C++指針以及memory allocation的觀念比較不足,覺得整體來說老師上的很好,不過我覺得指針這個部分可以再多著墨一點,對於初學者來說我相信也是比較搞不清楚的地方,其他部分我覺得觀念清楚,例子也說的很生動,鼓勵老師出第二堂C++進階課,我一定會來上的
查看更多
1 人覺得有幫助
楊子駿2024-05-16
雖然每個單元都不長,但都很清楚
雖然已經是研究生,但因為在大學時期的主修不需要學c++,所以完全沒有概念,直到上研究所之後,遇到很多堂課需要使用c++完成,才知道要花時間學習。每個章節雖然時數不長,但重點都簡單易懂,對於有一點程式基礎的來說,很快就可以上手了。
查看更多
1 人覺得有幫助
我是帥哥 =)2022-07-28
非常好~
這個程式語言讓我從"完全不會C++"直接進化到"可以去操作C++"把它練得熟能生巧 我覺得對於新手來說可能會覺得很難,只要有心,其實就可以學會,那怕是學了足足365天。 努力!!!就一定能學會!!!!
查看更多
1 人覺得有幫助

意猶未盡嗎?

關於講師

Kevin
1堂課程
0篇文章
1,655位學生
前往講師頁面
精選學生作業

購課前問答

日期最新
日期最新
日期最舊
愛心數
廷霖
2026-07-31
老師好,要取哪下載ppt呢謝謝!
回覆
我也想問
Rocky
2025-12-20
完全沒有程式基礎概念且邏輯偏弱,還能學習c++語言嗎?
回覆
我也想問
蔡尚君
2025-01-05
請問老師,你這門c++的課程是c++第幾版? 因為我上網查了一下,舊版的c++寫法 跟 現代版 有差別, 畢竟c++是歷史悠久的語言,隨時間更新, 有些過時的語法到2025年已不適用, 希望你這門課 是 2025年現代版本
Kevin
授課老師
2025-01-12
您好,語言是以 C++11 為主。 這堂課主要內容是幫著建立程式設計基礎與設計邏輯,不同版本間不會有太大的差異喔。
回覆
1 人想問
sh fi
2024-06-29
老師還有在維護問與答嗎?
(已編輯)
Kevin
授課老師
2024-12-10
你好,還有再回覆呦!
回覆
4 人想問
祐誠
2023-07-11
老師 請問課程有限制一定時間內要看完嗎
Kevin
授課老師
2024-12-10
這邊的課程沒有時間和次數限制喔,可以看到飽!
回覆
我也想問
購買單堂課

NT$1,490
有什麼優惠可以用?
小蛙幫你找最佳優惠
登入看看 有什麼優惠用

相關標籤