-1

我正在尝试创建一个菜单系统,并且一旦它们已经被访问过,我就会将菜单存储在堆栈中。我试图使用 Stack.Peek() 基本上说:如果 menuName = menuStack.Peek,则继续。

菜单有与之关联的drawRectangle、sprite 和Menuname 枚举,所有菜单都是Menu 类的子类。

    public static void GoToMenu(MenuName menuName)
    {
        Stack<Menu> menuStack = new Stack<Menu>();
        Stack<Menu> tempStack = new Stack<Menu>();
        if(menuStack.Peek() = MainMenu){

        }
    }

或多或少,如果 menuStack.Peek 返回一个 mainMenu 对象。我该如何检查?

我只是真的不知道如何阅读 menuStack.Peek()。我不知道如何将它应用于 if 语句以检查它是否等于 mainmenu 对象、pausemenu 对象或其他任何东西。

4

1 回答 1

1
    public static void GoToMenu(MenuName menuName)
    {
        Stack<Menu> menuStack = new Stack<Menu>();
        Stack<Menu> tempStack = new Stack<Menu>();
        if(menuStack.Peek().Name == menuName){
            menuStack.Pop();
        }
    }

这就是我需要的

于 2014-11-04T19:20:11.737 回答