C++ primer学习笔记(5)——vector中装的是string指针怎么办

来源:互联网 发布:asio 网络库 优点 编辑:程序博客网 时间:2024/05/05 13:44

新手,在看到这个题目的时候稍微多想了一下,觉得有必要把这个题目记下来,高手勿喷。

题目:定义一个vector对象,其每一个元素指向string类的指针。读取该vector对象,输出每个string的内容和相应地长度。

代码如下:

////  main.cpp//  show////  Created by apple on 15/7/3.//  Copyright (c) 2015年 apple. All rights reserved.//// 定义一个vector对象,其每一个元素指向string类的指针// 读取该vector对象,输出每个string的内容和相应地长度#include <iostream>#include <vector>#include <string>using namespace std;int main(int argc, const char * argv[]) {    // insert code here...    std::cout << "Hello, World!\n";    //vector对象    vector<string*> spvc;    string str;    while (cin>>str) {        //因为vector中存放的是指针,所以要先定义指针指向输入的字符串        string* sp = new string;        *sp = str;        spvc.push_back(sp);    }    //读取vector中指针指向的字符串    for(vector<string*>::iterator iter = spvc.begin();iter != spvc.end();iter++)    {        cout << **iter << '\t'<<"长度:" << (**iter).size() <<endl;    }    //释放各个动态分配的string对象!!!    for(vector<string*>::iterator iter = spvc.begin();iter != spvc.end();iter++)    {        delete *iter;    }    return 0;}
0 0
原创粉丝点击