C++与我的甜蜜第二天

RTX4060本地部署Qwen3.5-9B+openclaw实现离线AI Agent AI Agent(智能体)是具备感知、规划、工具调用与自主执行能力的下一代AI应用范式。其核心原理依赖大语言模型(LLM)作为推理中枢,结合结构化Prompt工程、函数调用(Function Calling)协议及插件化技能(Skill)调度机制,实现闭环决策。技术价值在于摆脱云端API依赖,保障数据隐私、降低使用成本并提升响应确定性。典型应用场景包括本地文档分析、自动化办公、私有知识库问答及边缘端智能控制。本文聚焦消费级GPU(如RTX4060)在资源受限条件下,通过llama.cpp推理引擎高效加载Qw 阅读详情

想一想,C++貌似和C没有很大的区别,甚至可以用C的任何代码,除了引用不要和指针混淆。
总结一下目前已知的C艹和C的我写代码时候遇到的区别:

  1. #include ??? 没错,就是引入库的时候变了,不过都是输入输出流,没必要在意太多,不用".h"了
  2. 输入输出格式cout << "" << endl;cin >> "";
  3. string,一个非常实用的类库
  4. 可以使用引用,可以理解为一个变量多个名字,而不像我们使用的指针变量取到的变量地址,更加灵活,这个引用我目前找不到什么用处。
  5. 数据类型多了bool,好像C#也只多了一个bool,啊,貌似也集合了string。
  6. 动态内存管理不需要用malloc了,直接用new就可以,比较灵活,直接自己判断数据类型和空间大小。

我的STL学习

STL(Standard Template Library)标准模板库!!再也不用我在C里面手打一堆了!从表面上来说,STL就是一些“容器“和“算法”的集合。其实编程不就是数据结构加算法么?容器就是将一些数据结构封装了,可以直接进行调用。
列举STL的所有头文件:、、、、、、、、、、、和。
必须一个一个好好学嗷,芜湖~

(不学STL的C++就不是完整的C艹)

简单的stl入门:

1、Container
是一种数据结构,也是stl中几乎是最重要的,包含了list,vector,stack,queue等。可以使用由容器类输出的迭代器。(这里一环扣一环)
2、Iterator
迭代器,是一种特殊的指针,它提供了访问容器中对象的方法,至于在程序设计中,它扮演了容器和算法之间的胶合剂,可以安全地对容器内容进行操作,或是进行算法模板的使用。(调用容器进行算法的构建,容器只是一个数据结构,即对象)
3、Algorithm
算法,是一类常用的算法模板,就可以对容器进行操作,同时其开放性也让算法类本身可以针对数组或是自定义结构体等结构进行直接的操作。
4、Function object
仿函数,抽象来说是一种行为类似函数,我们可以理解为一种高级的,重载了()操作符的结构体与类。/有点不懂/
5、Iterator Adaptor
迭代适配器,是一种用来修饰容器或者仿函数的接口,它使得适配器能够让算法以逆向模式、安插模式工作,甚至可以与流配合。对容器起到非常大的辅助作用,同时他还将迭代器进行了更高级别的抽象。
6、allocator
是负责空间的配置与管理,重点就是对容器的空间申请和空间释放进行管理,可以理解为C的malloc和free函数,C++的new和delete关键字。动态内存管理。

容器

  • Vector

1、概念

可以翻译为向量,或向量数组,至于为什么以向量命名,可以理解为一维空间也是存在向量的。
Vector是最简单的容器,就像数组一样,向量使用连续的存储位置作为元素,这就意味着它们的元素可以使用常量指向其元素的偏移来访问,与数组一样有效。但与数组不同,他们的大小可以动态变化,其存储由容器自动处理。(是动态的!!!!)

2、相关头文件->#include<vector>

3、初始化->vector<data_type>name;

vector<int> v1;          //创建一个空的向量v1
vector<int> v2(10);      //创建一个向量v2,其已开辟10个元素的空间,相当于int v[10];
vector<int> v3(10,5);    //创建一个向量v3,其已开辟10个元素的空间并全部赋值为5
vector<int> v4(v3.begin(),v3.end());    //创建一个向量v4,其内容为向量v3的内容
vector<int> v5(v4);      //创建一个向量v5,其包含了v4的全部内容

4、迭代器

是安全访问器,不像指针,可能造成内存访问错误,里面有很多预防错误的方法和多种访问方式。在stl使用中一般用迭代器对容器进行访问,因此创建容器的迭代器。
遍历代码:

vector<int> v;       //创建一个向量v
vector<int>::iterator it;   //C98标准
for(it=v.begin();it!=v.end();it++){
    cout<<*it<<' ';
}//这不就是指针的形式么,还挺贴心的,为我们这些C老用户着想

下标形式:

 for(int i=0;i<v.size();i++){
        cout<<v[i]<<' ';
    }

5、常用接口(此处没有全部列出)

首先,我们使用vector<int> v;预先创建了一个向量

  1. 向量尾部插入push_back()
    在向量的末尾加入一个新元素,并将容器自动扩容一个。
    函数原型为:void push_back(const value_type& val);
    使用举例:v.push_back(10); //插入一个数据10
  2. 向量尾部删除pop_back()
    溢出向量尾的最后一个元素,并将容器大小减小一个。和上面的是相反的,推拉动作。
    使用举例Lv.pop_back();
  3. 插入insert()
    插入元素到指定位置,通过元素之前在指定位置插入新元素来扩展向量,从而有效地增加容器大小。
    函数原型:
    插入单一数据到指定位置:
    iterator insert (iterator position, const value_type& val);
    插入一段数据到指定位置:
    void insert (iterator position, size_type n, const value_type& val);
    插入一段别的容器的数据到指定位置:
    template <class InputIterator>
    void insert (iterator position, InputIterator first, InputIterator last);
    举例:
 v.insert(v.begin(),10);     //在向量最前端插入数据10
 v.insert(v.begin(),5,20);   //在向量最前端插入5个数据20
  
 vector<int> k(2,50);   //创建一个新的向量k,其拥有2个元素内容均为50
 v.insert(v.begin(),k.begin(),k.end());  //在向量v最前端插入向量K的全部内容
  1. 删除erase()
    删除一个元素,或是一段区间的元素,将会自动缩减空间的使用。
    函数原型:
    iterator erase (iterator position);
    iterator erase (iterator first, iterator last);
    使用举例:
v.erase(v.begin());//删除第一个元素
v.erase(v.begin(),v.begin()+4);//删除从第一个开始后的四个元素,包括第一个
  1. 清空clear()
    将向量中所有元素清空。
    函数原型:
    void clear();
    使用举例:
v.clear();
//显然这的v都利用vector的类方法,很实用啊
  1. 数据大小size()
    返回向量中的数据元素个数 。
    函数原型:
    size_type size() const;
    使用举例:
cout << v.size() << endl;//输出数据大小
  1. 已开辟最大快读capacity()
    返回向量最大已开辟的空间大小,明显和上面的有区别,因为开辟的空间可能没存数据。
    函数原型:
    size_type capacity() const;
    使用举例:
vector<int>v(3,10)//创建默认有3个值为10的元素的向量v
v.insert(v.begin(),10,20);//在向量最前端插入10个值为20 的数据
v.erase(v.begin(),v,begin()+4);//删除从第一个开始后的四个元素
cout << v.size() << endl;//输出数据大小
cout << v.capacity() << endl;//输出容器大小
  1. *最大支持空间max_size()
    返回计算机支持开辟vector的最大空间值,一般来说和计算机内存和CPU相关,是一个极大的数据,不同计算机中可能不同。
    函数原型:
    size_type max_size() const;
    使用举例:
vector<int> v(5,10);//创建默认有五个值为10的元素的向量v
cout << v.max_size() <<endl; //输出可以创建的vector空间的最大值。
MiniCPM-o 4.5全模态大模型:端侧实时流式交互技术解析 全模态大模型正从‘多输入批处理’迈向‘边看边听边说’的实时流式交互新范式。其核心原理在于模态编码器在线化、语言模型时分复用调度与主动交互决策机制的协同,技术价值体现在极低延迟(TTFT<300ms)、端侧可部署(CPU/无GPU)、高资源利用率三大突破。典型应用场景覆盖智能终端助手、无障碍交互、家庭健康监护与教育陪练等对实时性与人格化有强需求的领域。MiniCPM-o 4.5作为该范式的代表性实现,以9B参数规模和llama.cpp轻量推理支持,在iPhone、MacBook Air等设备上达成真正可用的全 阅读详情

相关推荐

一周深度学习实战课:认知脚手架搭建与教学节奏控制

深度学习入门教学面临的核心矛盾,是知识复杂性与人类认知带宽的天然冲突。基于工作记忆容量限制(Miller定律)和神经网络可解释性需求,现代短周期AI课程必须从‘知识灌输’转向‘认知转译’——将反向传播具象为梯度流、把卷积核类比为图像滤镜、用Excel可视化损失曲面。这种以‘可操作、可观察、可修复’为准则的教学设计,本质上是面向零基础学习者的认知压缩工程,适用于高校短期选修课、企业AI通识培训及跨学科技术扫盲。本文聚焦真实课堂验证的72小时作战地图,覆盖数据加载、模型乐高化构建、梯度可视化、失败驱动评估与零配

dezhen7015的博客 457

欢乐暑假线上编程比赛第四题:分配糖果

题目详情 有n个小朋友站成一排(编号从0到n-1),每个小朋友有一个rating值,存放在ratings数组中。老师需要给他们分 配糖果,每个小朋友至少需要一颗糖果,对于任意相邻的两个小朋友i和i+1,rating值大的必须比rating值小的分 配的糖果多(rating相同的没必要分配一样多的糖果)。 请计算最少需要多少颗糖果,才能完成上述分配。 输入格式:

xiaobei1a2b3c的专栏 1309

Node.js图像处理为何首选Sharp:原理、线程与内存深度解析

图像处理是Web服务中高频且易出错的核心能力,其本质涉及像素级计算、内存生命周期管理与CPU并行调度。理解libvips流式处理架构和Sharp的零拷贝封装逻辑,是规避OOM、线程阻塞与元数据泄露的关键。Sharp通过静态链接依赖、FinalizationRegistry内存绑定、以及与libuv线程池协同的并发控制,实现了生产环境所需的确定性性能。它不提供DSL语法糖,而是将图像缩放、格式转换、EXIF清洗等操作映射为可监控、可降级、可缓存的工程原语。本文聚焦Node.js图像处理实战中的sharp.co

aoanping0730的博客 433

五一后遗症

睡不着那就跟自己聊聊天…… 现在的我已经在被子里躺了六小时了,可是睡意全无,崩溃ing…… 既然睡不着那就写点什么吧! 五一小长假结束了,据说将迎来非常忙碌的工作。六月要合TR4了,但是现在TR3依然有遗留问题,测试结果未知,不知道会有多少问题出现,希望能在掌控之中顺利完成。 接下来写写假期吧,假期第一天跟好朋友会师成功,去了徐汇日月光,吃了渝利火锅。女孩子喜欢的东西大概都会有火锅吧,哈哈哈,虽然喜欢但是却吃不了多少辣,据说少了很多好滋味。假期第二天,去了另一个商场,吃了成都你刘姐冒菜。她说很好吃,不光冒

ZI_LIN1的博客 444

Gemma 4技术解析:PLE、Shared KV Cache与多模态统一架构

大语言模型推理效率瓶颈长期制约端侧部署,核心症结在于静态嵌入、冗余KV缓存与模态割裂。Per-Layer Embeddings(PLE)通过层特异性动态信号注入,在不增加FLOPs前提下提升语义表达精度;Shared KV Cache以分层共享机制显著降低长上下文内存占用,实现显存与延迟双优化;结合全模态统一架构,Gemma 4将文本、视觉、语音三模态原生协同建模,支持2B级模型在MacBook Air等无GPU设备上实时响应。该范式正推动AI从云端中心化走向终端轻量化,为隐私敏感场景与边缘智能应用提供全新

weixin_30859423的博客 321

从Notebook到生产:ML模型推理服务架构与落地实践

机器学习模型部署不是简单封装API,而是涉及模型序列化、特征固化、GPU资源调度、可观测性与灰度发布的系统工程。其核心原理在于解耦协议层(如FastAPI)、推理层(如Triton Inference Server)与调度层(如Kubernetes Operator),以应对ML服务特有的高内存占用、计算密集性与隐式状态问题。技术价值体现在低延迟(P95<200ms)、高稳定性(P99延迟波动收窄4.6倍)和可运维性(MTTR从22分钟降至21秒)。典型应用场景包括实时风控、电商推荐与NLP在线服务,尤其适

weixin_30319153的博客 374

C语言--娱乐小游戏--快叫你身边的小伙伴也玩玩吧!!!

printf("星期三:已经到了约定时间可是你的女朋友还没好,你选择 1:等 还是 2:老子自己去看得了 \n");printf("星期四:你的女朋友遭到前男友纠缠,你想赶走前男友,请选择你的幸运数字1-10\n");printf("星期一:很不幸那天下起了大雨,由于你是直男,你并没有选择为女朋友挡雨\n");printf("你的女朋友邀请你到她家里做客,同意扣1,拒绝扣2\n");你压根就没有女朋友!printf("你发现你的女朋友是变态杀人魔\n");printf("你婉拒了女朋友的邀请\n");

weixin_72851285的博客 94

微信小程序真机HTTPS证书链失效排查与修复指南

HTTPS证书信任链是保障Web通信安全的基础机制,其核心在于客户端能否通过服务器提供的证书及其上级签发者,逐级回溯至自身预置的可信根证书。在微信小程序场景中,由于客户端不复用系统根证书库,而是采用固化、精简且更新滞后的自研CA白名单,导致大量符合浏览器标准的证书(如Let’s Encrypt新版ISRG Root X1、TrustAsia等)在真机环境下触发net::ERR_CERT_AUTHORITY_INVALID错误。该问题本质是证书链断裂或签名算法/密钥长度不合规,而非域名配置或CORS策略异常。

weixin_33935636的博客 677

失业66天

作为年轻人,我们苦心经营的无非两样——爱情和事业,拥有一份甜蜜的爱情能够为发展事业提供动力;而具有良好的事业更能为爱情提供保障,又或是成为追求爱情的资本。   我们渴望着自己心仪的事业,或收入丰硕,或工作轻松,或增长见识,或结交人际。但是在很多时候,我们起初选择的工作并不是自己希望的,它们可能是走错的岔路,也可能是通往最终目标的阶梯。而在结束一份工作到选择一份新的工作的阶段这个必经过程就是失业

zhao_yin的记事本 2万+

喷雾破碎模型解析:从理论到CFD应用实践

本文深入解析喷雾破碎模型的理论基础与CFD应用实践,重点介绍KHRT、TAB和ETAB等主流模型的核心原理与工程调参技巧。通过OpenFOAM实例演示和参数优化建议,帮助工程师精准预测液滴破碎行为,提升燃烧效率与排放控制性能,适用于汽车发动机、燃气轮机等工业场景。

weixin_29281915的博客 497

Mixer-First Receiver适用于宽带阵列应用的接收机技术1

Mixer-First Receiver适用于宽带阵列应用的接收机技术1技术的背景单元级数字化阵列传统链路到Mixer-First链路的逻辑考虑三种场景小结 技术的背景 在文章《吊打全球的顶级毫米波数字阵列项目-MIDAS》中提到了DARPA在MIDAS项目中在毫米波实现宽带单元级数字化阵列用到了一个关键的叫做N-Path filter的技术,而这个技术同样出现在了《让微波射频工程师颤抖的芯片-MATRICs》的MATRICs芯片中。 为什么DARPA的各个合作研究机构选择这种技术?这篇来自Universi

ICONO的博客 2167

失业66天:一个入行两年的程序员真实写照

作为年轻人,我们苦心经营的无非两样——爱情和事业,拥有一份甜蜜的爱情能够为发展事业提供动力;而具有良好的事业更能为爱情提供保障,又或是成为追求爱情的资本。我们渴望着自己心仪的事业,或收入丰硕,或工作轻松,或增长见识,或结交人际。但是在很多时候,我们起初选择的工作并不是自己希望的,它们可能是走错的岔路,也可能是通往最终目标的阶梯。而在结束一份工作到选择一份新的工作的阶段这个必经过程就是失业...

455

Python爬虫实战:如何高效抓取拼多多商品信息、销量与价格数据,破解反爬虫挑战

**摘要:**本文介绍利用Python爬虫技术抓取拼多多商品数据(价格、销量等)的方法与应用价值。通过分析拼多多商品页面的HTML结构,使用Requests和Selenium获取数据,并应对反爬虫机制(IP代理、请求头伪装等)。数据可存储于MongoDB或CSV用于市场监控、竞品分析等场景。文章涵盖技术选型、实战代码示例及反爬策略,为电商数据分析提供实用指导。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1670

收到offer,庆祝~

 S真是高效率,太nb了,佩服。第一周周五2009.06.05 16:26,在优快云上面看到jd,二话没说就发了cv。(介个不是我的风格啊,以前可是要详细的考察,然后再拖一拖,呵呵)。2009.06.05 17:00,半小时后(效率太高了),S的哥们就给我打电话,聊了10分钟的技术,看得出来对我还是非常感兴趣。2009.06.05,十几分钟后,hr小姑娘打电话,约我周一去面。我说

Hisense的专栏 1324

OSNet代码解析(普通卷积,分组卷积,深度可分离卷积,OSblock组成)

文章目录普通卷积和分组卷积普通卷积和深度可分离卷积用深度可分离卷积(LightConv3x3)代替普通卷积(Conv3x3)减少参数OSBlock (bottleneck)OSNet OSNet之所以轻量(2.2M)在于网络浅,使用深度可分离卷积代替传统卷积,但是很有效 普通卷积和分组卷积 所谓分组卷积,就是右图的input features分成一组一组,如上图groups=3,那么输入的特征分成3组,每组有12/3=4的通道的特征参与输出。然后根据输出通道的维度,得到每组的输入特征要计算两次(6/3=2

Mr_DaYang的博客 9800

【自适应滤波】自适应UKF,基于新息自适应调节Q和R,场景为雷达跟踪与滤波、MATLAB实现

本文提出了一种基于新息协方差匹配的自适应UKF(CM-AUKF)算法,用于解决噪声统计未知或时变场景下的目标跟踪问题。通过实时调整过程噪声协方差Q和观测噪声协方差R,CM-AUKF显著提升了跟踪精度和稳定性。仿真结果表明,相比传统UKF,CM-AUKF在位置和速度估计误差上分别降低了约50%和30%,且无需人工调参。该算法适用于无人机导航、雷达跟踪等动态环境,MATLAB代码可直接运行复现结果。自适应曲线显示算法能有效收敛到真实噪声参数,验证了其自适应能力。

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 329

PHP程序员工作的幸福感的庖丁解牛

维度核心来源心理机制一句话本质心流即时反馈,零摩擦意图与响应无缝连接改完即见,思行合一掌控全栈闭环,一人军队独立完成从 0 到 1我的地盘,我做主价值商业变现,务实致用看到代码变成金钱/价值不做虚功,只创实利文化包容互助,生态丰富归属感,站在巨人肩上拒绝傲慢,拥抱温暖生活高效闲暇,远程自由时间主权,工作生活平衡代码服务于生活,而非反之终极心法PHP 程序员的幸福感,是一种“返璞归真”的智慧。它不追求技术的极致复杂,而追求创造的极致流畅;

长风破浪会有时的博客 474

openmediavault(OMV) (1)安装部署

EXT3(Third Extended File System): EXT3 是 Linux 中广泛使用的日志文件系统,是 EXT2 文件系统的升级版本。这里可以根据自己的需求进行设置,目前只设置了自动登出为1天,为方便后续配置使用,其他设置可根据自己的具体需求进行设置。通过cd 命令进入到我们的raid存储中,通过ls发现里面没有任何的数据,因为我们的raid存储中还未创建任何数据。我的系统要安装在100G的磁盘上,故选择100G的磁盘,实际可以根据具体情况选择。

Monster✺◟(∗❛ัᴗ❛ั∗)◞✺的博客 2167

百合花的故事

<br />我已经不记得那男孩的样子了,而且我也不知道他的名字,他从没告诉过我。我不知道现在长大的他在做什么,是不是还记得那个夏天,可是我还记得。 <br />    在那条人流熙攘,灰尘飞扬的街上,我有一个小小的花店。从小我就梦想着自己有一间玻璃花屋,堆满色彩缤纷的花,阳光透过一尘不染的玻璃照进来,最重要 的,我要在花屋的中央,阳光里,放一张木头的小圆桌,然后用一个简单的没有装饰的玻璃花瓶装满满一花瓶的白色百合,而现在,我就坐在一屋子花的中间,下午 的阳光正照在百合花上。 <br />   我注

vincebessie的专栏 360

Gbase 8a GDCA考试真题100%

本文整理一些Gbase 8a中非常易错得考试真题及答案,而且都是不好搜的。加粗的是正确答案。

打工之路,一路生花 4299

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

失业66天[转自csdn]

昨天看了《失恋33天》,今天早看了一篇文章叫做《失业66天》,写的蛮有意思,作为从事游戏事业的人员颇有感触。 http://blog.youkuaiyun.com/zhao_yin/article/details/7050923 作为年轻人,我们苦心经营的无非两样——爱情和事业,拥有一份甜蜜的爱情能够为发展事业提供动力;而具有良好的事业更能为爱情提供保障,又或是成为追求爱情的资本。 我们渴...

weixin_30485799的博客 277

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

轻量化多智能体系统实战:Phi-3驱动的本地化AI创业验证框架

多智能体系统(Multi-Agent System)作为大模型落地的关键范式,正从概念走向工程化实践。其核心原理在于将复杂任务解耦为可验证、可调度、可审计的专用角色协作,而非依赖单一大模型的通用推理。技术价值体现在可控性提升、数据隐私保障与推理成本下降——尤其适合边缘设备与中小企业场景。典型应用场景包括创业点子验证、SaaS产品定位分析、本地化市场扫描及自动化商业建模等。本文聚焦轻量化实现路径,以Phi-3系列模型为能力锚点,结合Orchestrator调度中枢与结构化工具链,构建不联网、低内存、高确定性的

weixin_34208283的博客 544

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Unity为啥不使用继承?——一场“血统枷锁“的技术反思

从"程序员的噩梦",到"继承的六大困境",到"组合的降维打击",到"世界观的哲学之选"——Unity拒绝继承的选择——不是意气用事——而是一场深思熟虑的技术革命它拒绝了**"组合爆炸"的失控**它拒绝了**"僵化血统"的枷锁**它拒绝了**"脆弱基类"的隐患**它拒绝了**"横向共享"的窘迫**它拒绝了**"多重继承"的死局**它拒绝了**"难以变化"的宿命**它选择了一种极简的世界观——一种灵活的组合方式——自由拼装一种平等的哲学——没有血统的贵贱。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 1562
上一篇: C++之 string学习
下一篇: Leetcode 面试题 02.03. 删除中间节点
Neepu_G.job
博客等级 码龄8年 7粉丝 69原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值