C++中vector的insert参数问题

今天模拟实现vector的过程中,发现pos传参给insert后是不能直接使用的,如果扩容的话,就要更新pos,于是就像用引用来解决这个问题

一般的pos还是能正常传参,但是如果传某容器的迭代器的话,就会报错

原因:begin()函数是传值返回,这个返回值具有常性(const),所以不能传递给insert的pos,属于权限放大。

相关推荐
梦幻精灵_cq26 分钟前
学C之路:不可或缺的main()主函数框架(Learn-C 1st)
c语言·开发语言
消失的旧时光-194337 分钟前
C++ 多线程与并发系统取向(二)—— 资源保护:std::mutex 与 RAII(类比 Java synchronized)
java·开发语言·c++·并发
福大大架构师每日一题2 小时前
go-zero v1.10.0发布!全面支持Go 1.23、MCP SDK迁移、性能与稳定性双提升
开发语言·后端·golang
抓饼先生2 小时前
iceoryx编译和验证
linux·c++·零拷贝·iceoryx
王老师青少年编程2 小时前
2020年信奥赛C++提高组csp-s初赛真题及答案解析(阅读程序第2题)
c++·题解·真题·初赛·信奥赛·csp-s·提高组
五阿哥永琪2 小时前
1. 为什么java不能用is开头来做布尔值的参数名,会出现反序列化异常。
java·开发语言
逻极3 小时前
pytest 入门指南:Python 测试框架从零到一(2025 实战版)
开发语言·python·pytest
你的冰西瓜3 小时前
C++ STL算法——排序和相关操作
开发语言·c++·算法·stl
今儿敲了吗3 小时前
29| 高考志愿
c++·笔记·学习·算法
海边的Kurisu4 小时前
Mybatis-Plus | 只做增强不做改变——为简化开发而生
java·开发语言·mybatis