int main()
{
string name, sound, owner;
int age;
int answer = 1;
int i = 0;
do
{
++i;
puts("Enter the dog info below");
puts("Dog's name: ");
cin >> name;
puts("Dog's sound: ");
cin >> sound;
puts("Dog's age: ");
cin >> age;
puts("Dog's owner: ");
cin >> owner;
puts("Do you want to add one more dogs to the database?\n1: Yes\n0: No");
cin >> answer;
Dog name(name, sound, age, owner);
} while (answer != 0);
for (int a = i; i > 0; i--)
{
printf("%s", name.getname().c_str());
printf("\n\n%s is a dog who is %d years old, says %s and %s the owner\n\n",
name.getname().c_str(), name.getage(), name.getsound().c_str(), name.getowner().c_str());
}
return 0;
}
これは、ユーザーの入力に基づいて複数のオブジェクトを作成するための単純なコードです。クラスとメソッドが設定されています。 whileループなしでうまく動作します。しかし、私はユーザーの入力に基づいてオブジェクトを作成して印刷することはできません。次の行は、 "has have member getname"というエラーを示しています。と呼ばれるすべてのメソッドで同じエラーが発生します。なぜこれが起こっているのか理解していますが、これに対する解決策はありますか?ユーザー入力に基づいて複数のオブジェクトを作成してアクセスする方法 - C++
name.getname().c_str(), name.getage(), name.getsound().c_str(), name.getowner().c_str());
は私達にあなたの 'Dog'クラスを表示します。 – user1286901
「なぜこれが起こっているのか理解しています」 - あなたの知識レベルを測るのに役立っている理由を説明してもらえますか? – immibis