c++ 青铜快速学习- STL篇

c++ 快速学习-STL使用

为什么使用STL

自定义数据越来越多

随着项目的功能越来越多,需要管理的变量也会越来越多。大家就会使用结构体,类等来管理变量和函数。这些自定义的数据,都是由不同的基本类型组合而成,一个项目里面管理的数据结构和类,也是非常的多的。

struct Man
{
   int id;
   int age;
};

struct Apple
{
   int id;
   float price;
};

虽然自定义的数据结构千千万万,但是对数据结构的操作大部分都是类似的。比如数据的插入,删除,访问,修改等,都是差不多的。

STL 的作用就像快递盒

STL就像蜂巢的快递箱子,各种不同类型的数据都可以装在里面。stl并不关系里面的盒子里放的什么数据,stl只负责数据的拿出,放入,修改。这种设计思想,抽离了数据与逻辑的关系,将类似的逻辑封装起来,就是STL的核心思想。


vector

为什么使用vector?

  • 当你编程是否疑惑自己定义的数组是否容量足够大,因为你无法把握未来的需求,可能一开始需求是10个用户,后面需求是1000个,你要是忘记改了大小,程序就会出错了。这时候vector的动态扩容,解决了这个难题。

使用vector

#include <iostream>
#include <vector>

using namespace std;

int main()
{
	vector <int> num_list;

	//清除
	num_list.clear();

	//增加数组元素
	num_list.push_back(1);
	num_list.push_back(2);

	//单个查询
	cout << " [1] " << num_list[1];

	//遍历
	for (auto item : num_list)
	{
		cout << item << " " << endl;
	}


	return 0;
}

map

为什么使用map

  • 利用key通信,减少数据搬迁
    当我们管理的数据越来越多,我们会给这些数据都编一个号码,每个模块不需要传输数据,只需要通过号码就能找到对应的数据,避免数据大量传递。
  • 具备快速定位功能
    map就像快递驿站的快递编号,通过编号-key,找到对于的快递📦,这就是map的左右,能快速定位数据。

使用map

#include <iostream>
#include <map>
using namespace std;

int main()
{
    map<int, string> pet_list;
    // 插入
    pet_list.insert(make_pair(1, "Cat"));
    pet_list.insert(make_pair(2, "Dog"));
    // 通过key,直接访问
    cout << "1 号 " << pet_list[1];
    //遍历
    for (auto item : pet_list)
    {
        cout << "[ " << item.first << "," << item.second << "] ";
    }
    cout << endl;

    return 0;
}
  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值