C++对C的改进(1)
C++ 改进
2023-09-14 08:58:00 时间
①初始化不是简单地赋值,初始化指声明变量或对象并且赋初值;赋值指用新值覆盖变量或对象当前值。
②直接初始化语法更灵活且效率更高
③初始化内置类型变量两种初始化几乎没有差别对于类类型的初始化,有时只能采用直接初始化(以后讨论)
④两种初始化的方法可以混用(见下例)
合使用初始化的例子:
#include iostream using namespace std; int main() double salary = 9999.99, wage(salary + 0.01); cout salary " " wage endl; int interval,month = 8, day = 7, year(2008); cout year ":" month ":" day ":" endl; system("PAUSE"); return 0; }新的I/O
C语言的输入输出:
C++语言的输入输出:
C++语言的输入输出:先睹为快
#include iostream using namespace std; int main() int x; double y; /*以下语句等价于printf("请输入两个整数(用逗号隔开):");*/ cout "请输入两个整数(用空格隔开):"; /*以下语句等价于scanf("%d %f", x, */ cin x y; /*以下语句等价于printf("x = %d, y = %f\n", x, y);*/ cout "x = " x ", y = " y endl; system("PAUSE"); return 0; }
C++的输入输出:cin,cout的用法
基本用法:cout 表达式1 表达式2 表达式n;
cin 变量1 变量2 变量n;
cout "x + y =" x + y "." endl; cin x y;
[注意]
①不能用一个 输出多个数据项
cout a,b,c endl; /*错误*/ cout a b c endl; /*正确*/
cout "boolalpha bval1=" boolalpha bval1 endl; cout "noboolalpha bval1=" noboolalpha bval1 endl; cout "bval2=" bval2 endl; cout "bval3=" bval3 endl; cout "bval4=" bval4 endl; cout "bval5=" bval5 endl; system("PAUSE"); return 0; }
有关类型的区别:string类
#include iostream #include string using namespace std; int main() string name = "student"; string address = "Hebei... ..."; cout name address endl; return 0; }
string对象的定义和初始化:
getline的第一个参数通常为cin, 第二个参数为string对象
从录入数据的下一行读取,可读取 任何字符
getline()以回车作为结束符 (不接受换行符)
getline()不忽略前导回车,若第一 个就是换行符,则置为空串
string对象的操作,设有:string s, s1;注意:
1、size()的返回类型并非int而是string::size_type类型的值,建议不要把size()的返回值赋值给int变量
string s2 = "hello"; string::size_type count = s2.size();2、两个string对象+时,+操作符左右操作数必须至少有一个是string
#include iostream #include string using namespace std; int main() string s1 = "hello"; string s2 = "world"; string s3 = s1 + ","; string s4 = "hello" + "world "; //error string s5 = "hello" + s2 + "world" ; system("PAUSE"); return 0; }3、string对象下标操作时,任何无符号整型值均可用作下标,但下标的实际类型为string::size_type
4、string下标操作可用作左值
int main() string str = "student"; cout str endl; for(string::size_type ix = 0; ix!=str.size(); ++ix) str[ix] = x; cout str endl; system(" PAUSE "); return 0; }
有关类型的区别:枚举
C++对枚举的改进:
①在C++中定义枚举变量可以不用enum
js基础之new关键字知多少 一个问题:写一个js方法实现一个 new 运算符。new 都用过,用来创建实例对象,可new 操作背后都做了些什么,我们确很少关注。
使用vue实现HTML页面生成图片(下) 随着网络的发展,越来越多的网络平台应运而生。如何获得更多的流量,吸引更多的眼球已经成为网络平台生存、发展的必要条件。现在网络平台最常见的一种宣传方式就是人邀人。
高德最佳实践:Serverless 规模化落地有哪些价值? 曾经看上去很美、一直被观望的 Serverless,现已逐渐进入落地的阶段。今年的 十一出行节 ,高德在核心业务规模化落地 Serverless,由 Serverless 支撑的业务在流量高峰期的表现十分优秀。传统应用也能带来同样的体验,那么 Serverless 的差异化价值又是什么呢?本文分享高德 Serverless 规模化落地背后的实践总结。
使用 Terraform 一键创建跟踪 操作审计(ActionTrail)帮您监控并记录阿里云账号的活动,包括通过阿里云控制台、OpenAPI、开发者工具对云上产品和服务的访问和使用行为。
好消息!Elasticsearch中也可以使用机器学习了 机器学习已经在现在的工业实践中得到了广泛的应用。作为强大搜索引擎的ElasticSearch也在6.3开始内置了对机器学习的支持。
TensorFlow On Flink 原理解析 本文将分享如何使用一套引擎搞定机器学习全流程的解决方案。先介绍一下典型的机器学习工作流程。如图所示,整个流程包含特征工程、模型训练、离线或者是在线预测等环节。
相关文章
- dev c++ Boost库的安装
- C/C++每日一练(20230411)
- C/C++每日一练(20230219)
- 【转】C++调用Matlab的.m文件
- C++学习心得与c语言到c++衔接技巧
- 解答私信@被c++折磨头秃的花季美少女 //C++ 写一个带命令行参数的程序,可以实现将参数求和、求平均值以及排序之后输出(参数的数量不确定)。
- c++ vector 初始化_C++--vector()的用法
- C++ string字符串按分隔符分割成一个数组
- Sublime Text3 C++及Java开发环境配置
- 问题解决:C++ 读取MySQL数据库中文乱码问题
- AI模型C++部署:ubuntu安装Cython并使用C/C++调用python动态库【附加c++与python互相调用算法demo程序接口的源码】
- c++ vector C++ vector存放结构体 并且排序
- 标准的 C++ 由三个重要部分组成
- 【C++ 科学计算】矩阵元素绝对值小于设定值时,元素值变为零
- Visual Studio 2015开发C++程序的基本使用-蔡军生-专题视频课程
- 设计模式C++实现——观察者模式