2013-07-24 165 views
0

我想了解如何通過公共課程訪問私人課程,因爲有些專家告訴我,我只能使用私人課程。但我不明白爲什麼這不起作用。我真的不知道我怎麼能通過公衆訪問它的真正混亂。課程,通過公共私人

#include <iostream> 
#include <string> 
using namespace std; 

class ManolisClass{ 

public : 
    void setName(string x){ 
     name = x; 
    } 

    string getName(){ 
     return name; 
    } 

private : 
    string name; 
}; 

int main() 
{ 
    ManolisClass bo; 
    getline(cin, bo.setName()); 
    cout << bo.getName(); 
    return 0; 
} 
+0

通過公共課程訪問私人課程?你在談論繼承嗎?我很困惑 – nijansen

+0

究竟是什麼問題?它是否編譯?它會產生意想不到的結果嗎?請擴大您的問題。 – arne

+0

對不起,我真的很抱歉......但我現在正在學習這個!他們對我說,我只能使用私人班而不會公開。 – valkon

回答

1

您的訪問方法是正確的,但是您可以從函數setName的簽名中看到,您必須提供一個字符串來設置類的名稱。 getLine方法將一個字符串作爲參數。您可以創建一箇中間變量並使用該變量來設置類的名稱。

以下是人們如何做到的。

string temp; 
getline(cin, temp); 
bo.setName(temp); 
+0

謝謝!這就是我想要的!非常感謝!一些專家對我說,我只能使用私人課程,因爲公共課程是糟糕的編程,我現在正在學習,所以我必須聽取他們的意見!謝謝 – valkon