2011-08-23 65 views
-1

例如如何在成員方法中的條件成立時重新啓動對象?

  Class AClass 
      { 
       public AClass (int a) 
       {...} 
       public void DoIt() 
       { 
       ... 
       c = PreDo(); 
       ... 
       } 
       private int PreDo() 
       { ... 
       if (b==1) 
        xxxxx 
       ... 
       } 
      } 

     int Main() 
      { 
       AClass myClass = new AClass(2); 
       myClass.DoIt(); //* 
      } 

*這裏我想一旦XXXX叫然後MyClass的是沒有長期有效。

因此它將在main中嘗試使用myClass = new AClass(3), myClass.DoIt(),等等。

+1

你的方法和變量似乎根本不相關。 – BoltClock

+0

請重構你的問題,以便它可讀。目前我發現很難確定這個問題。 –

+0

究竟你想在這裏實現什麼?告訴我們爲什麼你在做什麼,在哪裏需要幫助 – mtijn

回答

0

是否橫跨所有實例或僅在一個實例中? ...只是使用(靜態)變量notRunAllready記住調用(所以if (b==1)if (!notRunAllready && b==1)),你在XXXX

0

設置notRunAllreadytrue可能是我理解你在說什麼。 您可能希望基於某些在內部類的構造函數中初始化的類內部變量進行條件執行。

  1. 聲明他們像static像@CKoening說。但它是由我們連線的,因爲在通話過程中會發生什麼並不是十分清楚。

  2. 制定條件執行的最佳解決方案是將方法的參數添加到您的DoIt(..)方法中,方法是明確指出「如果將此參數傳遞給函數會發生什麼情況」。

如果這不是你問的問題,請更好地解釋。

相關問題