2011-12-26 46 views
0

我試圖訪問開關櫃中的一個類的功能,但標識符未找到錯誤即將到來。下面是示例。如何在開關櫃中訪問一個類的功能

class menu { 
    switch(a) { 
     case 1: 
      tej t; 
      t.do_something 
      break; 
    } 
}; 
class tej:public menu { 
    public: 
     void do_something() { 
      body of function 
     } 
}; 

回答

0

有幾件事情從你的代碼丟失:

  • 你有do_something後忘記了括號?
  • 此外,你是否遺漏了某個功能?您不能直接在課堂上輸入switch聲明。
  • 您不能直接在switch語句中聲明變量。你需要一套額外的大括號。
class menu { 
public: 
    void do_switch(int a) { // Note function 
     switch(a) { 
     case 1: 
      { // You need an extra set of braces if you intend to declare variables 
       tej t; 
       t.do_something(); // <-- N.B. Parentheses! 
      } 
      break; 
     } 
    } // Note extra brace to close function 
}; 

class tej:public menu { 
    public: 
     void do_something() { 
      // body of function 
     } 
}; 

我強烈建議你拿起a good introductory C++ book,因爲你得到出錯的地方是對語言非常重要。這種方式不那麼令人沮喪。