最近在练习使用STL中德各种容器,像vector,map,set之类的。

然后在使用vector的时候,无意间遇到了一个很二逼的问题。

主要是这样的,请看源码(C++):

//错误的写法:
#include "stdafx.h" #include<iostream>
#include<vector>
#include<algorithm> using namespace std; int main()
{
vector<int> MyVector; //这里是没有申明数量的,而下面用的下标访问,会出现错误
for(int i=0;i<10;i++){
MyVector[i]=i; //这里的访问方式不对。
}
cout<<MyVector.size()<<endl;
cout<<MyVector.empty()<<endl;
MyVector.clear();
cout<<MyVector.empty();
int a=0;
cin>>a;
return 0;
} //改进的方法一
#include<iostream>
#include<vector>
#include<algorithm> using namespace std; int main()
{
vector<int> MyVector(10); //申明的时候把向量的容量申明
for(int i=0;i<10;i++){
MyVector[i]=i;
}
cout<<MyVector.size()<<endl;
cout<<MyVector.empty()<<endl;
MyVector.clear();
cout<<MyVector.empty();
int a=0;
cin>>a;
return 0;
} //改进的方法二 #include<iostream>
#include<vector>
#include<algorithm> using namespace std; int main()
{
vector<int> MyVector; //申明的时候不申明向量的容量
for(int i=0;i<10;i++){
MyVector.push_back(i); //赋值的时候用push_back方法,从后插入。
}
cout<<MyVector.size()<<endl;
cout<<MyVector.empty()<<endl;
MyVector.clear();
cout<<MyVector.empty();
int a=0;
cin>>a;
return 0;
}

一些细节的地方说明,请看源码中的注释,谢谢!

我在使用vector时候遇到的二逼问题的更多相关文章

  1. 【BZOJ3196】二逼平衡树(树状数组,线段树)

    [BZOJ3196]二逼平衡树(树状数组,线段树) 题面 BZOJ题面 题解 如果不存在区间修改操作: 搞一个权值线段树 区间第K大--->直接在线段树上二分 某个数第几大--->查询一下 ...

  2. BZOJ3196二逼平衡树——线段树套平衡树(treap)

    此为平衡树系列最后一道:二逼平衡树您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作: 1.查询k在区间内的排名2.查询区间内排名为k的值3.修改某一位值上的数值4.查询 ...

  3. 3809: Gty的二逼妹子序列

    3809: Gty的二逼妹子序列 链接 分析: 和这道AHOI2013 作业差不多.权值是1~n的,所以对权值进行分块.$O(1)$修改,$O(\sqrt n)$查询. 代码: #include< ...

  4. 【题解】二逼平衡树 [P3380] [BZOJ3196] [Tyvj1730]

    [题解]二逼平衡树 [P3380] [BZOJ3196] [Tyvj1730] 传送门:[模板]二逼平衡树(树套树)\([P3380]\) \([BZOJ3196]\) \([TYVJ1730]\) ...

  5. ZJOI2013 K大数查询 和 LG3380【模板】二逼平衡树(树套树)

    K大数查询 有N个位置,M个操作.操作有两种,每次操作如果是1 a b c的形式表示在第a个位置到第b个位置,每个位置加入一个数c:如果是2 a b c形式,表示询问从第a个位置到第b个位置,第C大的 ...

  6. BZOJ 3809: Gty的二逼妹子序列

    3809: Gty的二逼妹子序列 Time Limit: 80 Sec  Memory Limit: 28 MBSubmit: 1387  Solved: 400[Submit][Status][Di ...

  7. bzoj 3196: Tyvj 1730 二逼平衡树

    #include<cstdio> #include<ctime> #include<cstdlib> #include<iostream> #defin ...

  8. 【BZOJ-3196】二逼平衡树 线段树 + Splay (线段树套平衡树)

    3196: Tyvj 1730 二逼平衡树 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2271  Solved: 935[Submit][Stat ...

  9. 【BZOJ-3809】Gty的二逼妹子序列 分块 + 莫队算法

    3809: Gty的二逼妹子序列 Time Limit: 80 Sec  Memory Limit: 28 MBSubmit: 1072  Solved: 292[Submit][Status][Di ...

随机推荐

  1. ashx调用session对象

    1.引入命名空间 using System.Web.SessionState 2.必须实现接口 public class Login : IHttpHandler, IRequiresSessionS ...

  2. Silverlight 图表下载到Excel文件中

    一.Silverlight xaml.cs文件按钮触发方法 1.//下载图表        private void btnDown_Click(object sender, RoutedEventA ...

  3. C/C++中的成员函数指针声明及使用

    代码: #include <iostream> using namespace std; class Test{ public: void func(){ cout<<&quo ...

  4. 犯罪团伙 codevs 3554

    这是一道经典的水题,提供两种方法:①深搜  ②并查集 NO.1 深度优先搜索: #include<iostream>#include<cstdio>#include<al ...

  5. DOM 其他一些特性

    cookie 允许javascript程序读写HTTP cookie 的特殊的属性 domain 允许当Web页面之间交互时,相同域名下相互信任的Web服务器之间协作放宽同源策略安全限制 (JavaS ...

  6. CSS注意事项

    1.定义样式不能就加:隔开 当有定义的css样式并没有起作用的时候看看定义该样式前边有没有加“;”的如 p{};div{}

  7. 如何从数据库(实体提供者)读取安全用户(转自http://wiki.jikexueyuan.com/project/symfony-cookbook/entity-provider.html)

    Symfony 的安全系统可以通过活动目录或开放授权服务器像数据库一样从任何地方加载安全用户.这篇文章将告诉你如何通过一个 Doctrine entity 从数据库加载用户信息. 前言 在开始之前,您 ...

  8. PHP数组foreach后使用current取值的问题

    先看如下的代码 $arr=['a','b','c']; foreach ($arr as $v){ echo $v.'<br>'; } var_dump(current($arr)); 今 ...

  9. 愉快的开始 - Windows程序设计(SDK)000

    愉快的开始 让编程改变世界 Change the world by program  参考教材 购买链接:Windows程序设计(第5版)(珍藏版)(附CD-ROM光盘1张)  学习环境 视频演示:W ...

  10. ng-repeat 与ng-switch的简单应用

    效果如下图所示: 使用表格显示用户信息,当点击某条用户信息时,在其下方展开一行进行展示. index.html <!DOCTYPE html> <html ng-app=" ...