【发布时间】:2012-08-20 08:24:29
【问题描述】:
代码如下:
// pointers to structures
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
struct movies_t {
string title;
int year;
};
int main ()
{
string mystr;
movies_t amovie;
movies_t * pmovie;
pmovie = &amovie;
cout << "Enter title: ";
getline (cin, pmovie->title);
cout << "Enter year: ";
getline (cin, mystr);
(stringstream) mystr >> pmovie->year;
cout << "\nYou have entered:\n";
cout << pmovie->title;
cout << " (" << pmovie->year << ")\n";
return 0;
}
取自http://www.cplusplus.com/doc/tutorial/structures/。我希望我能澄清一些事情。
什么是
getline,它是如何工作的?我尝试查找文档,但我仍然无法理解。另外,cin到底是什么?它是如何与getline一起使用的?如果我理解正确,
pmovie->title本质上是说pmovie指向对象title的成员title?如果是这样,并且从对#1 的解释中还不清楚,getline (cin, pmovie->title)是如何工作的?现在这个
(stringstream) mystr >> pmovie->year给我带来了最大的麻烦。什么是stringstream,我们是否像将双精度类型转换为整数一样使用它?
谢谢大家!
【问题讨论】:
标签: c++