我是C++的新手,之前從未使用過宏,但我相信他們可能會允許我解決以下問題,但我會歡迎其他解決方案。C++動態顯示或隱藏FLTK小部件?
我寫了下面的宏:
#define COMMAND(NUMBER){ button_ ## NUMBER ## ->hide(); }
,我想這樣稱呼它
for (int i = 1; i < 10; i++)
{
COMMAND(i)
}
,希望在程序執行時,它會做的相當於
:
button_1->hide();
button_2->hide();
button_3->hide();
button_4->hide();
.
.
button_10->hide();
這個想法是,我想要使一個FLTK GUI顯示/隱藏小部件動態取決於一個公司當表單被加載時讀入的配置文件。
不幸的是,看起來,宏觀以上不工作,而不是它的作用是
button_i->hide();
因爲button_i不存在這會導致編譯錯誤!
所以我的問題是:
A)是否有可能在C++中做到這一點? B)宏是否能夠實現這一目標?
c)如果不是可以的話? D)如果宏可以做到這一點,那麼我該如何修改上面的代碼才能真正實現它!
謝謝
該死的,你打我19秒;) – Lindydancer 2011-04-01 15:48:40
你是對的,存儲在一個數組是一個更好的解決方案。我發現[這裏有一個很好的fltk特定解決方案](http://www.mail-archive.com/[email protected]/msg04350.html) – Gavimoss 2011-04-04 08:21:15