1. C語言亂數生成

    前言 本篇文章將介紹 C 中使用 rand 函數產生亂數的方法,並且提供各種常用的範例程式碼。由於本方法使用到餘數運算,因此會有分佈不均的問題。C++ 11 可以使用標準中內建的亂數函式庫 random 產生各種機率分布的隨機亂數。

    2022/11/11 C++

  2. C/C++套件管理工具vcpkg

    前言 vcpkg 是 Microsoft 的跨平台開源軟件包管理器。簡單來說它是一個 Windows 上原生的 C 和 C++ 套件管理軟體,主要的目的是解決在 Windows 上沒有方便的套件管理的方式。

    2022/11/10 C++

  3. C語言 define 條件編譯用法

    前言 在 C 語言中 define 關鍵字可以讓編譯器進行簡單的條件控制,通常又稱巨集、前置處理器。當一個程式被編譯時,可以透過它來決定該行程式碼是否要被編譯執行。以下展示常見的用法:

    2022/11/09 C++

  4. Flutter 使用 Dart FFI 呼叫 C/C++ 函式

    前言 我們在開發跨平台 Flutter APP 的時候,會依賴第三方套件進行實作。例如影像辨識會使用 OpenCV 所提供的影像處理方法,當然它有提供各種平台的動態連結庫提供 Linux、Windows、Andorid、iOS…等。然而在開發 Flutter 時可以直接透過 dart:ffi(foreign function interface) 呼叫原生的 C APIs。如此一來各種平台統一維護一份 C/C++ 程式碼即可,最後再由 ffi 去呼叫外部定義好的函式。關於 FFI 可以參考這篇文章,寫得蠻清楚的。

    2022/10/11 Flutter

  5. Flutter 故障排除: libc++abi: terminating with uncaught exception of type cvflann

    問題 最近正開發 Flutter 使用 Dart FFI 呼叫 OpenCV C++ 程式。並實作 Features2D-Homography 物件匹配,專案中並使用到 SIFT 特徵點提取言算法以及透過 knnMatch 計算兩張圖片相近的特徵點。只不過開發在電腦的 Android 與 iOS 模擬器運行都一切正常,但是在 iOS 實機運行時有閃退問題。在 Xcode 編譯器上提示這一行程式碼導致運行中斷:

    2022/10/10 Flutter

  6. Raspberry Pi 連線至隱藏網路

    前言 本篇文章將教各為如何在樹莓派 Linux 環境下進行網路設定,使的 Pi 能夠順利連接到隱藏網路。

    2022/09/26 Linux

  7. Flutter 故障排除: dependencies not support null safety

    前言 當執行舊版尚未支援 null safety 的 Flutter 專案時,跑出相依的檔案不支援 null safety:

    2022/09/24 Flutter

  8. C++ 計算程式運行時間

    C++ 計時函式庫比較 本篇文章將提供 Windows 和 Linux 系統好用的時間計時方法。

    2022/09/23 C++