【发布时间】:2021-06-07 20:47:40
【问题描述】:
所以我想基本上调用一个 void 并存储我的菜单、菜单编号、文本和函数 (void) 我很明显地做错了但我无法弄清楚。
void AddMenu(char* text, int Menu, void* func)
{
nMenu[Menu] = Menu;
sMenu[Menu] = text;
fMenu[Menu]* func;
}
所以这个想法是
void AddMenu("Main Menu", 0, NULL);
void AddMenu("Option 1", 1, SomeVoid());
void AddMenu("Option 2", 2, NULL);
void AddMenu("Option 3", 3, NULL);
void AddMenu("Option 4", 4, NULL);
有更好的方法吗?
int nMenu[32];
char* sMenu[32];
DWORD* fMenu[32];
int curMenu;
bool InMenu;
void AddMenu(char* text, int Menu, void* func)
{
nMenu[Menu] = Menu;
sMenu[Menu] = text;
fMenu[Menu]* func;
}
【问题讨论】:
-
考虑使用
struct来保存单个菜单的所有数据。然后只使用该结构的一个数组。 -
如果你创建
struct和创建std::vector<myMenu>,你可以使用myMenu.emplace_back创建项目而不需要单独的函数。 -
老实说,这是我不熟悉的东西。我想我得用谷歌搜索一下。
-
将每个菜单设为数据类型,你可以使用结构或类。
标签: c++ parameters void args