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;
}
4

1 に答える 1

1

アクセス メソッドは正しいですが、関数 setName のシグネチャからわかるように、クラスの名前を設定する文字列を指定する必要があります。getLineメソッドは引数として文字列を取ります。中間変数を作成し、その変数を使用してクラスの名前を設定できます。

これを行う方法は次のとおりです。

string temp;
getline(cin, temp);
bo.setName(temp);
于 2013-07-24T09:24:04.333 に答える