zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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 原理解析 本文将分享如何使用一套引擎搞定机器学习全流程的解决方案。先介绍一下典型的机器学习工作流程。如图所示,整个流程包含特征工程、模型训练、离线或者是在线预测等环节。