学好C++第一篇
来源:互联网 发布:人工智能虚拟系统 编辑:程序博客网 时间:2024/06/06 10:04
学好C++,前提必需看好书,好书写的就是这么通俗易懂,这么流利。
今天以一个小程序开始C++的学习。
题目:统计每个单词在输入中出现的次数。(此题的C语言解法请看之前指针的文章)
先看代码:
#include <iostream>#include <string>#include <vector>using namespace std;struct Pair{string name;double val;};vector<Pair> pairs;//维护Pair的一个集合://检索s,如果找到就返回其值,否则做一个新Pari并返回默认值0double& value(const string& s){for(int i=0;i<pairs.size();i++)if(s==pairs[i].name) return pairs[i].val;Pair p={s,0};pairs.push_back(p);//将Pair加到最后return pairs[pairs.size()-1].val;}//统计每个单词在输入中出现的次数int main(){string buf;int f;while(cin>>buf)value(buf)++;for(vector<Pair>::const_iterator p=pairs.begin();p!=pairs.end();++p)cout<<p->name<<": "<<p->val<<'\n';return 0;}
这个题目要注意以下几个问题:
1.cin>>buf, C++的输入以空白字符(如制表符换行符)作为结束一次输入。
2.const sting& s常量引用,s就是buf,const表示不能改变。
3.函数返回一个对象的引用,不是值,只有返回这个引用才可以对出现的次数加1。
4.vector的用法,迭代器,这些都很简单,熟悉一下。
5.Pair最简单关联数组,等着慢慢之后学习map的用法。
忠告一下:
1.尽量使用0而不是NULL
2.尽量使用vector和string,不要使用C的数组和char数组。
3.尽量少用普通的引用参数来改变实参。最好用指针和函数返回值。
4.避免void*和避免指针的非平凡的操作。
今后正式开始C++的学习路程,加油吧。。
- 学好C++第一篇
- C第一篇博客
- C总结的第一篇
- 第一篇C语言BLOG
- c 语言学习 第一篇
- C语言--第一篇导言
- c程序第一篇1
- 学好机器学习必会的统计学知识(第一篇)
- 一篇文章学好Spring4.0
- 看到一篇如何学好c语言的文章感觉不错就copy下来啦
- 第一篇 C/C++ (1)
- 第一篇 C/C++ (2)
- 《彻底搞定C指针》第一篇
- C++Primer 读书笔记 第一篇 C++ 概述
- 彻底搞定C语言指针第一篇
- Lua 与C 交换 第一篇
- 七夕-我的第一篇C博客
- 《c与指针》读书笔记之第一篇
- 数学之美番外篇:平凡而又神奇的贝叶斯方法
- 【设计模式】单件
- HTTP MIME
- nothrow
- 2013 ACM/ICPC Asia Regional Changsha Online - E Travel by Bike
- 学好C++第一篇
- 求1+2+3+……+n
- 启程了
- 未来,为我而来吧!
- 2013 ACM/ICPC Asia Regional Changsha Online-Problem C:Color Representation Conversion(模拟)
- classloader知识点
- 康托展开
- Android设备中实现Orientation Sensor(图)兼谈陀螺仪
- 手机AT指令集