当你的代码用在哪里时,如何保证函数将一个接一个地调用?

时间:2014-03-26 12:52:29

标签: c++ function

我有一组必须一个接一个地运行的函数调用 这是我的代码,所以我没有提前计划,任何方式我有一些必须一个接一个地运行的功能,如果不是代码将被打破。 我也不想在函数内部设置函数,这样当第一个函数结束时它将调用第二个函数。 有没有更好的方法? 我顺便使用c ++。

void ButtomPanelObj::onEnter()
{
    Sprite::onEnter(); //  func 1 must be first 
    createSpinButton(); //  func 2 must be after 1 
    createPayLinesLable(); //  func 3 must be after 2 
    createBetLable(); //  func 4 must be after 3 
    createTotalBetLable(); //  func 5 must be after 4 
    setWidgetsPosition();  //  must be last func  



} 

1 个答案:

答案 0 :(得分:1)

您可以封装这些功能。如果必须按顺序调用它们并且一直调用它们,则它们不应单独访问。它可能是这样的:

class ButtomPanelObj{
private:
    void createSpinButton();
    void createPayLinesLable();
    void createBetLable();
    void createTotalBetLable();
    void setWidgetsPosition();
public:
    void createStuff() {
        Sprite::onEnter(); //  func 1 must be first 
        createSpinButton(); //  func 2 must be after 1 
        createPayLinesLable(); //  func 3 must be after 2 
        createBetLable(); //  func 4 must be after 3 
        createTotalBetLable(); //  func 5 must be after 4 
        setWidgetsPosition();  //  must be last func  
    }

}

现在您只能从外部拨打createStuff(),这可以保证您需要的功能顺序。