2020年10月17日 星期六
C\C++ X-Macro 初步心得
第一次看到X-macro這個技術時,是在[C/C++] enum to string 的方法實作 (X Macro)這篇文章中,
當時看得「霧霧煞煞」(台語:一頭霧水之意),但由於是滿有趣的技巧,
所以就先將其存在evernote中了。
昨天為了寫個功能,想做類似的事
所以特別打開evernote中的記事來研究一下,
終於看懂這個東西了,
所以在這邊記錄一下我對X-Macro的理解!
第一次看到X-Macro時,總是無法將三個小巨集(Macro)連起來,
看懂後發現是我想的太複雜了
先來個例子:
一般而言,將enum轉成字串,可能會用下面的方式
#include <iostream>
enum eOption
{
option1,
option2,
option3
};
char* OptStr[] = {"option1", "option2", "option3" };
const char* enum2str(eOption idx)
{
return OptStr[idx];
}
int main(int argc, char* argv[])
{
printf("%s\n", enum2str(eOption::option1));
printf("%s\n", enum2str(eOption::option2));
printf("%s\n", enum2str(eOption::option3));
system("pause");
return 1;
}
2020年7月22日 星期三
[log book] opencv 使用ROI卻無法改變ROI影像內的值
[問題描述]
在撰寫一個特別的演算法時,
需要只針對某一行做運算,因此使用cv::Rect做了一個ROI,
將某一行取出做運算,但發現我不太能修改ROI取出的影像的值。
linux 下 Vim NeoDebug 套件使用方法筆記
若是用VS久了,在Linux下debug會覺得有點不習慣,因為要記、打一堆gdb相關指令。
筆者最近發現了一個好用的vim套件 ─ NeoDebug,下面來介紹安裝及使用方法。
筆者是在始碼的資料夾下建一個build資料夾,接著使用cmake 生成Makefile後,再使用「cmake --build build」指令在build資料夾編譯原始碼成執行檔
2020年5月17日 星期日
SikuliX安裝筆記
最近快到FGO的金閃祭了,
想要讓電腦幫我周回,
但bluestack的腳本功能並不能滿足我,
因為我的練度不高,所以不只要可以記錄我的點擊位置,有時也要選擇從者或是判斷一些簡單的狀況。
雖然照著官網的方式做,但小卡關,
後來找到了資料[1],發現只差一點點就成功了,
但怕後來忘了,所以寫做筆記,
而且我發現我參考資料[1]中的作者,也是為了玩FGO所以才寫sikuli的 XD
訂閱:
文章 (Atom)


