Devlog #0 — Why I’m Building My Own RPG Maker-like Engine in GoHi everyone 👋 I’ve always been drawn to RPG Maker-style games — small towns to explore, characters to talk to, puzzles to solve, and stories that unfold through simple but powerful interactions. WhenSep 7, 2025 · 3 min readnotes.mukyu.dev
sizeof array在 C++ 中,對於陣列的大小處理,sizeof 在函式中有個容易踩雷的陷阱:如果你把陣列當作參數傳入函式,它會退化成指標。這會導致 sizeof 傳回的是指標的大小,而不是陣列的實際大小。 Example #include <iostream> void test1(char (&a)[10]) { std::cout << "test1 called with array of siJun 14, 2025 · 2 min readnotes.mukyu.dev
Go 1.24 omitzeroGo 1.24 新增了一個新的 struct tag omitzero,解決了 omitempty 無法忽略 struct 以及 nil vs empty slice/map 不可區分的問題。 在介紹 omitzero 之前,讓我們先回顧 omitempty 的行為。 omitempty "omitempty" 指定當字段為「空值」時,序列化時應忽略該字段。 「空值」的定義:false、0、niMar 7, 2025 · 3 min readnotes.mukyu.dev
簡介 C++ 的 Type Erase (用多型和模板做 Duck Type)起點 讓我們先從 template 出發:foo 需要一個 callback function。 template<typename Func> void foo(Func callback) { // ... callback(); } 但是這會讓編譯錯誤訊息有點模糊:假如 callback 並不是一個可以呼叫的函數指標,或者並不是一個 callable object ,那編譯May 14, 2024 · 3 min readnotes.mukyu.dev
int64_t Literal Constant?事情源於一個 error: #include <algorithm> #include <iostream> int main() { int64_t a = 2; std::cout << std::min(1L, a) << std::endl; // mac 上編不過 std::cout << std::min(1LL, a) << std::endl; // uMay 6, 2024 · 1 min readnotes.mukyu.dev