class Cat
{
public:
int name;
Cat();
int getName();
}
私が持っている場合:
Cat* pointer = new Cat();
pointer->getName();
pointer->name; //this doesn't work
では、どうすればデータメンバーにアクセスできますか:名前?
class Cat
{
public:
int name;
Cat();
int getName();
}
私が持っている場合:
Cat* pointer = new Cat();
pointer->getName();
pointer->name; //this doesn't work
では、どうすればデータメンバーにアクセスできますか:名前?
それはうまく機能します:http://ideone.com/3E5Uec
#include <iostream>
using std::cout; using std::endl;
class Cat
{
public:
int name;
Cat() : name(0) { }
int getName() { return name; }
};
int main()
{
Cat* pointer = new Cat();
pointer->name = 42;
cout << "getName: " << pointer->getName() << endl;
cout << "name: " << pointer->name << endl;
delete pointer;
}
あなたが提供したコードはコンパイルされなかったので、あなたが提供したコードにいくつかの追加をしなければならなかったことに注意してください:
;
クラス定義の後に不足しているものを追加しましたpointer->name
それが機能したことを確認するためにの結果を出力しました