c++ std::map使用注意

本文探讨了在C++标准库中的map容器内检查特定键值存在的正确方式。通过对比使用方括号操作符和find方法,强调了find方法的安全性和准确性。介绍了find方法的工作原理及其在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用std:map時需要判斷某個key是否存在map中,

需要使用方法find,操作符[] 不能使用


如下

std:map<int,int> test

//判斷map中是否存在key為200的健值對。


if(test[200] == null) {// 這種方法有風險,原因是這個操作如果key在map中不存在,則為200在map中創建一個默認值。

//TODO

}

if(test.find(200) != m_heroMap.end()) {// 正確方法

//TODO

}


方法的註釋說明

       *  Allows for easy lookup with the subscript ( @c [] )

       *  operator.  Returns data associated with the key specified in

       *  subscript.  If the key does not exist, a pair with that key

       *  is created using default values, which is then returned.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值