dev c++ 请求"B"中的成员"A",该成员类型为非类类型"C"

dev c++ request for member `A' in `B', which is of non-class type `C'

本文关键字:类型 成员 成员类 请求 c++ dev      更新时间:2023-10-16

我收到错误消息request for member 'namn' in 'post', which is of non-class type 'telefonbok[10]'或类似版本。

我认为这与以下代码有关:

struct telefonbok 
   {
       string namn;
       string nummer;           
   };
int main()
{
int i, ja, nej;
telefonbok post[10];

我做错了什么?错误的目标是:

cin>>post.namn;

cin>>post.nummer;

这是完整的代码,对不起瑞典语:

#include <cstdlib>
#include <iostream>
#include <string>
using namespace std;
struct telefonbok 
   {
       string namn;
       string nummer;           
   };
int main()
{
int i, ja, nej;
telefonbok post[10];
bool svar; //behövs för frågan om man vill fortsätta.
for (i=0; i<10; i++)
{
         cout<<"Lagg till en post i telefonboken."<<endl;
         cout<<"Ange personens namn"<<endl;
         cin>>post.namn;
         cout<<"Ange personens nummer :"<<endl;
         cin>>post.nummer;
         cout<<"Vill du mata in en post till? (ja/nej)"<<endl;
         cin>>svar;
         if (svar == nej) break; //stoppar slingan om man svarar nej
}
system("PAUSE");
return 0;
}

感谢您所能提供的任何帮助。

post是一个数组,因此访问一个成员需要执行cin>>post[index].namn;而不是cin>>post.namn;

您希望访问数组中的单个post元素以及该元素的一个成员。

cin>>post.namn;

post是一个数组。所以应该是这样的:

cin>>post[i].namn;

您有一个telefonbok对象数组,您需要指定要读取信息的对象。

所以这些行应该读成这样:

cin >> post[i].namn; //i is an index to the array; the for loop variable.