1.C++的版本区别和选择
C++ 各个版本之间的主要区别在于引入的新功能和语言改进。每个新版本都会修复旧版本的 bug,并增加一些新的语言特性和库函数。
-
C++ 98:是最早的ISO标准C++版本,于1998年10月发布,引入了模板、STL和异常处理等功能,有一些老的oj在使用。
-
C++ 11(蓝桥杯选用):于2011年8月发布,这个C++修订版引入了Lambda表达式、委托构造函数、统一初始化语法、自动类型推导auto、nullptr、decltype、Rvalue和References等。
-
C++ 14:于2014年8月发布,此版本中添加的功能包括多态lambda、数字分隔符、通用lambda捕获、变量模板、二进制整数文字、引用字符串等。
-
C++ 17:于2017年12月发布,在 C++ 14 的基础上进一步增强了语言功能,引入了折叠表达式、十六进制浮点文字、u8字符文字、带有初始化程序的选择语句、内联变量等。
-
C++ 20:于2020年12月发布,是最新的 C++ 标准,增加了诸多新功能和改进,例如概念、三向比较运算符、协程、从多线程到并发执行的改进等。
选择 C++ 的版本取决于项目需求、开发环境和团队熟悉的程度。一般来说,选择最新的 C++ 标准版本是一个不错的选择,因为它会提供更多的功能和改进。但有时也需要考虑旧版本的兼容性和支持情况。
2.C++代码格式与基本数据类型
使用C++,输出“Hello,world”,代码如下:
#include<iostream>//引入头文件
using namespace std;
int main() {//main函数是C++中内置的启动函数,也就是程序入口
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);//取消同步流(加速程序运行)
cout << "Hello,world!" << endl;//利用cout将字符串输出,字符串用双引号括起来。
printf("Hello,world!");//C语言风格,用printf将字符串输出。
return 0;//函数遇到return会立刻结束,返回0表示函数正常结束。
}
代码运行结果:
C++基本数据类型展示:
#include<iostream>//引入头文件
using namespace std;
int main() {//main函数是C++中内置的启动函数,也就是程序入口
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);//取消同步流(加速程序运行)
int x = 3;//整数x
double d = 3.14;//浮点数(小数)d
char ch = 'A';//字符ch
char s[] = "Hello";//字符串s
bool b = true;//布尔值(即真假值)b,真为1,假为0
cout << x << '\n';//'\n'是换行符号,和endl作用相同,运行比endl快
cout << d << '\n';
cout << ch << endl;
cout << s << endl;
cout << b << endl;
return 0;//函数遇到return会立刻结束,返回0表示函数正常结束。
}
代码运行结果:
3.取消同步流
由于cin和cout需要自动判断变量类型等内部原因,读写效率比scanf和printf更低。当数据量较大时,可能导致程序运行超时。此时就可以通过取消同步流来加速cin和cout的运行速度。
#include<iostream>//引入头文件
using namespace std;
int main() {//main函数是C++中内置的启动函数,也就是程序入口
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);//取消同步流(加速程序运行)
int x;
cin >> x;
cout << x << endl;
return 0;//函数遇到return会立刻结束,返回0表示函数正常结束。
}