<<C++ Primer>> 第四版Exercise Section 5.6 的5.1.6 有一道题是这样的:编写程序定义一个vector对象,其每个元素都是指向string类型的指针,读取vector对象并输出每个string类型的值以及其长度。
1 // 2_3.cpp : 定义控制台应用程序的入口点。 2 // 3 4 #include "stdafx.h" 5 #include <iostream> 6 #include <string> 7 #include <vector> 8 #include <ctime> 9 10 using namespace std; 11 12 int main() 13 { 14 vector<string*> vect; 15 string str = "hello"; 16 string str1 = "world"; 17 vect.push_back(&str); 18 vect.push_back(&str1); 19 20 for (vector<string*>::iterator begin = vect.begin(); begin != vect.end(); ++begin) 21 { 22 cout << *(*begin) << endl; 23 cout << (*begin)->length() << endl; 24 } 25 26 return 0; 27 }
其实这里想要考查的是,通过指针获取对象的成员函数可以使用-> 操作符。