Luis

@kogiokka

Joined on Nov 23, 2019

  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive CMake 是一個跨平台的建置自動化軟體,用於軟體的建置、測試和包裝。CMake 會依照你撰寫的腳本產生平台上原生建置系統的設定檔(例如:Makefile),再使用原生建置系統編譯你的專案。 CMake專案的建置流程: 配置CMake快取(Configure Step) 產生原生建置系統的設定檔(Generate Step)
     Like 10 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 承實習課第五次作業,用類別模板改寫陣列版本的 Stack。 回顧之前跟堆疊(Stack)相關的作業: 第五次作業 - 堆疊的實作方式 第六次作業 - 函式模板(function template) 第八次作業 - 類別、建構子和解構子 本次作業 - 類別模板(class template)
     Like 1 Bookmark
  • 阮老師的網站:http://140.121.199.22/ 範例程式和範例專案下載: Google Drive 教學文件 若您是在 macOS、Linux 或 BSD 上撰寫 C/C++ 程式,或是想建立跨平台應用程式,或是純粹不想用 Visual Studio,請見 CMake 專案建置教學。 Visual Studio 專案建置 CMake 專案建置 常見問題
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 本次實習主題是程式設計中的配接器模式(Adapter Pattern)。還有練習 C++ 的繼承(inheritance)、虛擬函式(virtual functions)和抽象類別(abstract class)。 作業規定 繳交日期: 6月17日(以教師伺服器上顯示的日期為準) 電子檔繳交方式:將程式碼和心得壓縮成 ZIP 檔上傳到教師的伺服器。檔案格式為<學號>-<姓名>.zip,例如:11057666-陳小明.zip。 紙本繳交方式:上課交紙本(A4紙)的程式碼和心得
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 承第十次實習作業,擴充 BigInt 類別。 練習下列 C++ 語法: this pointer static members new and delete operator overloading
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 本次主題是運算子多載(operator overloading)。 實習目標 : class 基本語法 operator new 和 operator delete operator overloading (<< = += ++)
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 本次實習主題是程式設計中的配接器模式(Adapter Pattern)。還有練習 C++ 的繼承(inheritance)、虛擬函式(virtual functions)和抽象類別(abstract class),以及 std::map 的用法。 Adapter Pattern 配接器模式是一種設計模式(Design Pattern),讓介面不相容的物件能夠溝通。 如下圖,客戶(client)有一個固定存取服務(service)的方式(interface)。如果今天客戶想新增一個服務,但這個服務沒有提供客戶要求的方法,配接器(adapter)就可以為客戶提供跟服務溝通的管道。 舉一個簡單的例子,一開始程式中有兩個類別 RoundHole 和 RoundPeg,分別代表圓孔和圓木樁。RoundHole 類別的物件有一個函式 fit,接受 RoundPeg物件並透過getRadius函式得知圓木樁的半徑,藉此來知道木樁是不是能放進圓孔中。
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 這次主題是大整數(Big Integer)。程式語言中的整數型別通常佔 4 或 8 個 bytes,能儲存的數值大小有上限。因此如果想表示一個很大的整數,就不能依賴程式語言預設的基本型別。本次實習讓學生學習利用動態陣列表示任意大的正整數,並實作加法運算。 實習目標 練習 class 基本語法: 類別(class) 建構子(constructor) 解構子(destructor)
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 實習目標: operators new and delete static class members Operator Functions: Class Members friend Functions
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive 撰寫二元樹(binary search tree)程式來儲存各式的資料,並練習 C++ 語法:structure、pointer、reference 和 template。 程式範例:binary-tree.cpp 作業規定
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive 本次作業目標為熟悉 class、constructor 和 destructor(類別、建構子和解構子)。 參考資料 13.2 — Classes and class members, LEARN C++ 題目
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive 實習目標 練習比較 function 不同的撰寫方式. function overloading default arguments function template
     Like 1 Bookmark
  • 本次作業主題是 C++ 的模板。 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive 參考資料 函式模板, OpenHome.cc 8.13 — Function templates, LEARN C++
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive 本次主題是堆疊(stack)資料結構。 題目 程式要以下列三個方式實作三個版本的堆疊(stack),儲存值的型態為float: 版本一、巨集(#define ...)
     Like  Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive 定義 _CRT_SECURE_NO_WARNINGS → Windows、Visual Studio 當你用到C標準函式庫的函式(例如:scanf、fopen)時可能會遇到類似下列的錯誤,宣稱你使用的函式不安全: C4996 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
     Like 1 Bookmark
  • 教學文件和作業說明文件: https://hackmd.io/@kogiokka/ntou-cse-cpp-nav 範例程式和範例專案:Google Drive 目前 Visual Studio 的最新版本是 2022。如果沒有特別需求,直接到微軟官網下載最新版本。你會得到一個 Visual Studio 安裝程式。開啟安裝程式之後會進入一個頁面要你選擇工作負載。勾選「使用 C++ 的桌面開發」並安裝。 如果希望下載較舊的版本(2019 或 2017)請到 Visual Studio Subscription 網站 登入海大的微軟O365帳號。帳號是<學號>@o365.ntou.edu.tw,密碼是教學務系統密碼。 海洋大學微軟O365雲端服務說明:https://software.ntou.edu.tw/?q=node/536
     Like 3 Bookmark