c++第十四天
《c++ primer, 5E》
第91页到第94页,笔记:
1、vector支持的操作。
v.empty()、v.size()、v.push_back(t)、v[n]
2、试图通过下标访问不存在vector元素不会被编译器发现,
而是在运行时产生不可预知的值。
3、确保下标合法的有效手段:尽可能使用范围for
4、vector的小结:vector的初始化、vector支持的操作、vector的遍历与随机访问
遇到的问题:
课后练习:
练习3.16
正确。
并且验证 (10, "hi")和{10 , "hi"}等效,
而{10} 和(10)的效果取决vector元素的类型。
练习3.17
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
#include<vector>
using std::vector;
#include<string>
using std::string;
int main()
{
string word;
vector<string> svec;
while(cin >> word){
svec.push_back(word);
}
for(auto &word: svec){
for(auto &ch: word){
ch = toupper(ch);
}
cout << word << endl;
}
return ;
}
练习3.18
不合法。非法访问。 改为 ivec.push_back(42);
练习3.19
反正最好的是 vector<int> v(10 , 42);
练习3.20
1
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
#include<vector>
using std::vector;
#include<string>
using std::string;
int main()
{
int temp;
vector<int> v;
while(cin >> temp){
v.push_back(temp);
}
//随机访问
for(decltype(v.size()) index = ;
index != v.size()-; ++index)
cout << v[index]+ v[index+] << endl;
return ;
}
2
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
#include<vector>
using std::vector;
#include<string>
using std::string;
int main()
{
int temp;
vector<int> v;
while(cin >> temp){
v.push_back(temp);
}
//随机访问
decltype(v.size()) head = ;
auto tail = v.size()-;
for(;
head <= tail; ++head, --tail){
cout << v[head]+v[tail] << endl;
}
return ;
}
c++第十四天的更多相关文章
- 我的MYSQL学习心得(十四) 备份和恢复
我的MYSQL学习心得(十四) 备份和恢复 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) ...
- 雅虎(yahoo)前端优化十四条军规
第一条.尽可能的减少 HTTP 的请求数 (Make Fewer HTTP Requests ) http请求是要开销的,想办法减少请求数自然可以提高网页速度.常用的方法,合并css,js(将一个页面 ...
- Bootstrap<基础二十四> 缩略图
Bootstrap 缩略图.大多数站点都需要在网格中布局图像.视频.文本等.Bootstrap 通过缩略图为此提供了一种简便的方式.使用 Bootstrap 创建缩略图的步骤如下: 在图像周围添加带有 ...
- Bootstrap<基础十四> 按钮下拉菜单
使用 Bootstrap class 向按钮添加下拉菜单.如需向按钮添加下拉菜单,只需要简单地在在一个 .btn-group 中放置按钮和下拉菜单即可.也可以使用 <span class=&qu ...
- AngularJs的UI组件ui-Bootstrap分享(十四)——Carousel
Carousel指令是用于图片轮播的控件,引入ngTouch模块后可以在移动端使用滑动的方式使用轮播控件. <!DOCTYPE html> <html ng-app="ui ...
- C#编程总结(十四)dynamic
http://www.cnblogs.com/yank/p/4177619.html C#编程总结(十四)dynamic 介绍 Visual C# 2010 引入了一个新类型 dynamic. 该类型 ...
- 解剖SQLSERVER 第十四篇 Vardecimals 存储格式揭秘(译)
解剖SQLSERVER 第十四篇 Vardecimals 存储格式揭秘(译) http://improve.dk/how-are-vardecimals-stored/ 在这篇文章,我将深入研究 ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(十四):请求消息去重
为了确保信息请求消息的到达率,微信服务器在没有及时收到响应消息(ResponseMessage)的情况下,会多次发送同一条请求消息(RequestMessage),包括MsgId等在内的所有文本内容都 ...
- linux基础-第十四单元 Linux网络原理及基础设置
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...
- 无废话ExtJs 入门教程十四[文本编辑器:Editor]
无废话ExtJs 入门教程十四[文本编辑器:Editor] extjs技术交流,欢迎加群(201926085) ExtJs自带的编辑器没有图片上传的功能,大部分时候能够满足我们的需要. 但有时候这个功 ...
随机推荐
- OOA/D 01
建筑师一般不会为一栋100层的楼添加一个新的地下室,因为成本太高无疑会失败,但软件系统里提出类似改动需求时,他们通常都不会多想一下,相反他们会说:这只是一个简单的编程问题 可总会有一些看似极难完成.但 ...
- 【微信小程序】---授权登陆---【巷子】
Page({ onLoad: function() { var that = this; // 查看是否授权 wx.getSetting({ success: function(res) { if ( ...
- 【巷子】---webpack配置非CMD规范的模块
一.前言 webpack在配置多页面开发的时候 ,发现用 import 导入 Zepto 时,会报 Uncaught TypeError: Cannot read property 'createEl ...
- java中String与StringBuilder的区别
相信大家对 String 和 StringBuffer 的区别也已经很了解了,但是估计还是会有很多同志对这两个类的工作原理有些不清楚的地方,今天我在这里重新把这个概念给大家复习一下,顺便牵出 J2SE ...
- opengl学习笔记(三):经过纹理贴图的棋盘
opengl纹理贴图的步骤: 1:创建纹理对象,并为它指定一个纹理 2:确定纹理如何应用到每个像素上 3:启用纹理贴图功能 4:绘制场景,提供纹理坐标和几何图形坐标 注意:纹理坐标必须在RGBA模式下 ...
- CyanogenMod---android
http://blog.csdn.net/sheldon4090/article/details/7736957--service. android进程间通信:使用AIDL http://blog.c ...
- express 默认模板引擎
使用express -t ejs microblog创建出来的居然不是ejs项目,而是jade项目.现在的版本已经没有-t这个命令了,改为express -e microblog.运行完之后,根据提示 ...
- eclipse copy web project后修改context root
1.项目-->右键-->properties
- mysql 使用存储引擎
三 使用存储引擎 方法1:建表时指定引擎 指定innodb,不写默认也是innodb use 数据库先 create table innodb_t1(id int,name char)engine=i ...
- 阻止提交按钮的默认 action
使用 preventDefault() 函数来阻止对表单的提交. 示例代码如下: <html><head><script type="text/javascri ...