cs106B/L part1/2
1.const(让意图更加明显)
vector<int> vec={1,2,3};
int sum=0;
for(const auto& val:vec){ //遍历向量时,实际上并没有改变其值
sum+=val;
}
//sum=std::accumulate(vec.begin(),vec.end(),0);//0为初始值,累加vec里面的元素
2.string 流
流可以理解为字符的缓冲区
//字符串输出流,在缓冲区内部,已经包含了这些字符,意味着可以向字符串流中写入内容,但无法从中读取
ostringstream oss("Ito-En Green Tea");
//流具有的特殊操作,可以将缓冲区中的内容倾倒出来,并从中创建一个字符串
cout<<oss.str()<<endl;//Ito-En Green Tea
oss<<"16.9 Ounces";
// oss<<16.9<<" Ounces";这样也是可以的,因为流支持插入任何类型,他会将该类型自动转换为流形式
cout<<oss.str()<<endl;//16.9 Ouncesn Tea
//指针默认是从缓冲区开头读取和写入
//字符串输出流,在缓冲区内部,已经包含了这些字符,意味着可以向字符串流中写入内容,但无法从中读取
ostringstream oss("Ito-En Green Tea",ostringstream::ate);//加入常量,at the end,指针可以从末尾开始
//流具有的特殊操作,可以将缓冲区中的内容倾倒出来,并从中创建一个字符串
cout<<oss.str()<<endl;//Ito-En Green Tea
oss<<"16.9 Ounces";
cout<<oss.str()<<endl;//Ito-En Green Tea16.9 Ounces
//指针默认是从缓冲区开头读取和写入
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架