C++类+对象和用户交互
C++ Classes + objects and user interract
我是c++的新手,在处理类和对象时遇到了非常糟糕的情况。我找不到让用户输入数据的方法,而不仅仅是一些cout<lt;"..";我需要理解类和对象。我真的很感谢你的帮助。我在论坛上搜索了一个类似的问题,但没有找到什么,如果我错过了,我真的很抱歉。
#include <iostream>
#include <string>
using namespace std;
class ManosClass{
public:
string name;
};
int main ()
{
ManosClass co;
co.name = //i want here the user to enter his name for example and i can't figure a way to do this
cout << co.name;
return 0;
}
要读取用户输入,您需要查看std::getline或使用std::cin
std::getline(std::cin, co.name);
或
std::cin >> co.name;
cout
发送东西。cin
发送东西。这可能会有所帮助:
cin >> co.name;
cout。cin用于输入。
cin >> co.name
在co.name 中输入值
如果您不想假设一个人的名字是用空格分隔的,请考虑驻留在<string>
中的getline()
版本。有些名称确实包含多个"单词"。它也没有cin.getline()
那么笨拙,因为你不需要提前指定某人名字的最大长度。
#include <iostream>
#include <string>
using namespace std;
int main()
{
string strName;
getline(cin, strName); //Will read up until enter is pressed
//cin >> strName //will only return the first white space separated token
//Do whatever you want with strName.
}
编辑:修改为使用原始类
#include <iostream>
#include <string>
using namespace std;
class ManosClass{
public:
string name; //You might want to look at rather not using public data in a class
};
int main ()
{
ManosClass co;
getline(cin, co.name);
cout << co.name;
return 0;
}
替代方案:操作员过载
#include <iostream>
#include <string>
using namespace std;
class ManosClass{
public:
friend ostream& operator<<(ostream& out, const ManosClass& o);
friend istream& operator>>(istream& in, ManosClass& o);
private:
string name; //Hidden from prying eyes
};
ostream& operator<<(ostream& out, const ManosClass& o)
{
out << o.name;
return out;
}
istream& operator>>(istream& in, ManosClass& o)
{
getline(in, o.name);
return in;
}
int main ()
{
ManosClass co;
cin >> co; //Now co can be used with the stream operators
cout << co;
return 0;
}
相关文章:
- Qt VTK交互风格的信号到小部件
- C++如何通过用户输入删除列表元素
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 如何使用用户输入在C++中正确填充2D数组
- C++MySQL C api用户输入行
- 使用用户定义函数的字符串反转
- 用户定义函数中的指针和输入
- 为什么即使使用-cudart-static进行编译,库用户仍然需要链接到cuda运行时
- 如何只允许用户输入正整数
- C++如何计算用户输入的数字中的偶数位数
- 通过for循环使用用户输入填充列表
- 这是我尝试让用户将值输入到数组中.然后将其隐藏为大量的星号
- VTK:视图在用户交互后才会更新
- 是否可以通过图形用户界面 (GUI) 与 Linux 命令行界面 (CLI) 进行交互
- 我可以在形式的应用程序中查询用户交互事件
- 现代Windows输入API/用户交互API
- 如何同时处理用户交互和套接字事件
- C++类+对象和用户交互
- Windows 7中的用户交互服务
- 如何在显示对话框时禁用Qt应用程序中的用户交互