将2D数组作为参数传递并分配给Struct

时间:2017-07-02 18:22:10

标签: c++

我正在开发一种初始化菜单的方法。每个菜单都有项目,ID,标题和最大值。滚动值。我正在尝试设计一个函数,我可以使用它创建这样的菜单布局并将详细信息存储在结构中。我正在寻找这样的东西:

struct MenuStruct
{
    bool Connected, Open;
    int SelectedClient, Scroll, MaxScroll, ActiveMenu;
    char **Items; // ?
};
MenuStruct Menu[18];

void InitializeMenu(int Client, int MenuID, int MaxScroll, char *Title, char **Items /* ? */)
{
    Menu[Client].ActiveMenu = MenuID;
    Menu[Client].MaxScroll = MaxScroll;
    Menu[Client].Items = Items; // ?
}

void Menu::MainMenu()
{
    InitializeMenu(Client, MainMenuID, 3, "Main Menu", { "Sub Menu 1", "Sub Menu 2", "Sub Menu 3" });
}

正如您可能知道的那样,我在将项目作为参数传递并稍后将其存储在Struct中时遇到问题。在写这篇文章的时候,我想也许如果有人能够回答我的问题,他也许可以告诉我,如果我能以某种方式得到Max。从传入的项目数滚动而不必单独传递。 提前谢谢!

0 个答案:

没有答案