CodeGym
AI Academy
促銷
CodeGym University
學習
課程
任務
問卷 & 測驗
遊戲
說明
行程
社群
用戶
論壇
聊天
文章
成功故事
動態
評價
訂閱
淺色主題

課程

  • 評論
  • 關於我們
開始
開始學習
立即開始學習
  • My Progress
  • Courses
  • 任務地圖
  • 課程
  • Declaration vs definition:連結錯誤的來源

    C++ SELF
    等級 29,課程 0
    分析為何在多檔案 C++ 專案中會出現「編譯通過但連結失敗」的情況:什麼是 declaration(存在的承諾)與 definition(真實的實作/記憶體),翻譯單位( translation unit)如何組成,編譯器檢查哪部分、連結器要求哪部分,以及如何在示範專案 TaskBook 中正確地把宣告放在 .hpp、把定義放在 .cpp。
    可用
  • 不能重複定義同一個東西

    C++ SELF
    等級 29,課程 1
    我們來講解在多檔案 C++ 專案中的 ODR( One Definition Rule)規則:區分宣告與定義、為何連結器會抱怨 multiple definition、為何 #pragma once 只能防止在同一個 .cpp 內重複包含、為何在 .hpp 放置函式定義與全域變數是危險的,以及如何按教科書方式修正(在標頭宣告,在一個 .cpp 中定義)。最後 — 常見錯誤與對 inline 的謹慎介紹。
    可用
  • inline‑函式與 inline‑變數

    C++ SELF
    等級 29,課程 2
    解析為何在標頭檔 ( .hpp) 直接定義函式與變數常會導致連結錯誤 multiple definition,實際上關鍵字 inline 的作用是處理 ODR,而不是「提速」。以及如何正確地撰寫 inline‑函式與 inline‑變數(含 inline constexpr),以及在哪些情況下 inline 會對建置與架構造成傷害。
    可用
  • static 和 anonymous namespace

    C++ SELF
    等級 29,課程 3
    解析在 C++ 裡如何將實用名稱「藏」在 .cpp 內:什麼是 external/ internal linkage、檔級別的 static 與 namespace {} 的工作原理、為何在標頭檔使用 static 會在所有翻譯單元中複製實體、internal linkage 如何幫助避免名稱衝突,以及鏈結錯誤形式為 undefined reference 的由來。
    可用
  • 典型的 linker 錯誤

    C++ SELF
    等級 29,課程 4
    解析在多檔案 C++ 專案中最常見的連結錯誤: multiple definition 和 undefined reference 有何不同, ODR 與文本性質的 # include 如何導致符號「被複製」,何時使用 extern、 inline、 static 和 namespace,以及如何根據錯誤訊息進行診斷(包含流程圖與示範專案 MiniPlanner)。
    可用
學習
  • 註冊
  • Java 課程
  • 題目協助
  • 價格
  • Java 語法
社群
  • 用戶
  • 文章
  • 論壇
  • 聊天
  • 成功故事
  • 動態
  • 聯盟計畫
公司
  • 關於我們
  • 聯絡方式
  • 評價
  • 新聞中心
  • CodeGym for EDU
  • 常見問題
  • 支援
CodeGymCodeGym 是一門從零開始學習 Java 程式設計的線上課程。這門課程是初學者精通 Java 的完美方式。它包含超過 1200 題、具即時檢驗功能,以及涵蓋 Java 基礎理論的必要範圍。為了幫助你在學習上成功,我們實作了一系列激勵功能:測驗、程式專案、關於有效學習的內容,以及 Java 開發者職涯相關內容。
追蹤我們
介面語言
English Deutsch Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia
繁體中文
Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"程式設計師是培養出來的,不是天生的" © 2026 CodeGym
MastercardVisa
"程式設計師是培養出來的,不是天生的" © 2026 CodeGym