如何在 c++ 中为对象数组输入字符串
How to input strings for array of objects in c++?
//班级学生作为两个数据成员,姓名和卷号。在 main 函数中,for 循环用于逐个获取每个对象的数据成员值,然后显示名称和卷号。每个对象。在执行此程序时,它仅采用第一个对象的名称,并跳过第二个对象名称并直接滚动编号。对于第二个对象,编译器会询问。
包括
using namespace std;
class student
{
string name;
int roll;
public:
void getdata();
void display();
};
void student::getdata()
{
cout<<"Enter teh name";
getline(cin,name);
cout<<"Enter the roll no";
cin>>roll;
}
void student::display()
{
cout<<name<<" "<<roll;
cout<<"n";
}
int main()
{
student s[2];
for(int i=0;i<2;i++)
{
s[i].getdata();
}
for(int j=0;j<2;j++)
{
s[j].display();
}
return 0;
}
第二个对象在执行程序时没有采用字符串名称
在 cin>> 卷之后
add cin.ignore();
将 getdata(( 写为
void student::getdata()
{
cout<<"Enter teh name";
getline(cin,name);
cout<<"Enter the roll no";
cin>>roll;
cin.ignore();
}
cin>>roll;
getchar();
当您为滚动提供输入时,滚动由roll
变量存储。您按下的输入由name
变量存储并被跳过。在为滚动输入后使用 getchar()
获取该enter
键
相关文章:
- 将对象数组的引用传递给函数
- 如何使用Visual Studio 2017在C++中为参数化对象数组使用唯一指针
- 在c++中尝试对对象数组进行排序时,出现std:bad_alloc错误
- 类对象数组的问题会导致崩溃
- Arduino C++在构造函数中用参数声明对象数组
- 使用对象数组对 SFML 进行动画处理
- C++ 对象数组堆栈溢出
- 如何将对象数组作为参数传递给模板
- 使用向量初始化参数化构造函数的对象数组
- 如何初始化对象数组?
- C++创建对象数组
- 在对象数组中搜索字符串并返回相应值的函数
- 有没有办法使用该类的构造函数初始化另一个类的私有部分内的对象数组?
- 如何在运行时在对象数组中动态追加新对象C++并打印它们
- 为什么我在声明对象数组时不能使用 -> 运算符?
- 编译时生成应在构造函数中创建的非 constexpr 对象数组
- 使用 C++ 创建对象数组
- 对象数组打印空白字符串
- 重载运算符 [] 用于从对象数组中给出特定索引
- 如何在 C++ 中使用提升属性树从 JSON 文件中读取对象数组