在编译器vs13及其以上可以使用 编译器对语言的一种优化

1.变量初始化 int a=0,a(10),a{10};定义a的值的三种方式

2.nullptr 相当于c的null 有类型 更加的安全

3.auto 自适应类型 用于返回类型比较复杂的返回值

4.decltype 用一个变量定义同类型的变量/该类型的引用

5.关于for的一个用法for(i:arr) 变量数组里所有的数据

6.类的别名 C语言用 typedef int INT typedef 类型名 别名来定义 c++中用using INT=int来使用

7.类中成员 一般是构造中赋初值 C11可以直接在类中赋初值

8.A()=default;自动生成默认构造

9.委托  在构造中调用自己的其他构造

10.final 放在虚函数后面防止重写终极函数不能重写 放在类后面终极类不能派生其他子类

 #include<iostream>
#include<vector>//向量
using namespace std;
class A
{
int data = ;
int y;
public:
//A(){ data = 0; }//构造函数
A() = default;//默认构造 如果写了其他构造 默认不在自动生成一个构造函数
A(int data) :data(data){}//有参构造 初始化新参列表
A(int x, int y) :A(x){ this->y = y; }//在里面调用其他构造帮忙做事情 --->委托
}; class B
{
public:
virtual void fun(){
cout << "父类函数" << endl;
}
virtual void fun2()final{//加上final为终极类不能进行派生
cout << "父类函数2" << endl;
}
};
class C :public B
{
void fun(){
cout << "子类函数" << endl;
}
// void fun2(){
// cout << "类函数2" << endl;
// }子类函数fun2不能继承父类的函数 因为父类函数是终极函数 不能进行派生
};
class D final//不能派生任何子类
{ };
class E//:public 不能派生D
{ };
int main()
{
A aa;
int a = ;//c语言的赋值方式
int b();//c++的赋值方式 常用于初始化形参列表
int c{};//c11标准提出
int d[]{, , , , , , , , };//数组初始化
NULL;//c语言指针空 宏定义
nullptr;//c++的指针空 void*类型 auto x = 3.14;//auto类型 根据后面的值返回定义的类型 必须初始化否则无意义
vector<int>arr = { , , , , , , , };
//初始化数组
vector<int>::iterator it = arr.begin();//指向第一个元素 iterator用于修改元素的值
auto p = arr.begin();
cout << *it << endl << *p << endl;
int y;//int类型的变量
decltype(y) z;//定义一个变量z
//decltype是返回y的类型 z的类型和y的类型一样 int z
//z是什么类型 根据前面的y确定的 目的:定义同类型的变量
decltype((y)) py = y;//定义一个引用类型 相当于 int& y
for (auto i : arr)//循环打印arr的所有元素 i是新定义的变量 arr是数组
{
cout << i;
}
using INT = int;//给int取别名 INT
using ARR = int[];
ARR ab;//相当于int ab[4];
cin.get();
return ;
}

c11标准的更多相关文章

  1. C11 标准特性研究

    前言 - 需要点开头 C11标准是C语言标准的第三版(2011年由ISO/IEC发布),前一个标准版本是C99标准. 相比C99,C11有哪些变化呢!!所有的测试全部基于能够和标准贴合的特性平台. 但 ...

  2. GCC 版本与C11标准

    1. GCC版本是否支持C11 C89=C90:gcc选项是:-ansi, -std=c90 or -std=iso9899:; 带了GNU扩展的:-std=gnu90 C94=C95:gcc选项:- ...

  3. C89标准和C99标准C11标准的区别

    转载 C89标准和C99标准C11标准的区别 C99对C89的改变 1.增加restrict指针 C99中增加了公适用于指针的restrict类型修饰符,它是初始访问指针所指对象的惟一途径,因此只有借 ...

  4. 是我out了,c11标准出炉鸟

    gcc -std=c11 -Wall -O3 -g0 -s -o x.c x 或者 clang -std=c11 -Wall -O3 -g0 -s -o x.c x 来吧! 我是有多无聊啊 测试代码: ...

  5. gcc开启C99或C11标准支持

    开启C99支持 gcc -std=c99 forc99.c 开启C11支持 gcc -std=c1x forc11.c 或 gcc -std=c11 forc11.c

  6. C语言的三套标准 C89(C90)、C99、C11

    C语言最初由 Dennis Ritchie 于 1969 年到 1973 年在 AT&T 贝尔实验室里开发出来,主要用于重新实现 Unix 操作系统.此时,C语言又被称为 K&R C. ...

  7. C89标准库函数手册(待整理)

    http://zh.cppreference.com/w/c 前言 ANSI C(C89)标准库函数共有15个头文件.这15个头文件分别为: 1.<assert.h>            ...

  8. [转载]哪个版本的gcc才支持c11

    转自:https://blog.csdn.net/haluoluo211/article/details/71141093 哪个版本的gcc才支持c11 2017年05月03日 19:25:43 Fi ...

  9. GNU C编译器的gnu11和c11

    国际标准组织发布c11后,gnu为自己的编译器发布两种标准gnu11和c11 gnu11:带gnu c扩展的c11标准,如果你的代码包含了typeof,__attribute__等等gnu的扩展,就必 ...

随机推荐

  1. Mysql常用语法及入门开篇(一)

    数据:信息,记录.阅读: 数据库:数据的仓库,存储许多的数据(信息).按照数据结构来组件.存储和管理数据的,建立在计算机存储设备上的仓库. DBMS:   database management Sy ...

  2. 个人永久性免费-Excel催化剂功能第62波-单元格区域内数据加解密处理,最有效地保护数据方式

    Excel的数据保护能力有限,诸如之前提及过的工作表保护.工作薄保护等,都是十分微弱的保护措施,而对于强保护的工作薄打开密码来说,它像是个总开关一样,要么全不能看,要么就全看到.有这样的场景需求,一份 ...

  3. TCP端口复用引发的异常,用setsockopt来解决

    TCP端口复用引发的异常,用setsockopt来解决 我们在并发连接一个服务端时候他会出现这种情况 OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允 ...

  4. PHP语句中or的用法

     经常看到这样的语句: $file = fopen($filename, 'r') or die("抱歉,无法打开: $filename"); or在这里是这样理解的,因为在P ...

  5. k8s1.9.0安装--基础集群部署

    二.基础集群部署 - kubernetes-simple 1. 部署ETCD(主节点) 1.1 简介 kubernetes需要存储很多东西,像它本身的节点信息,组件信息,还有通过kubernetes运 ...

  6. Java网络和代理

    Java网络和代理 1)简介 在当今的网络环境中,特别是企业网络环境中,应用程序开发人员必须像系统管理员一样频繁地处理代理.在某些情况下,应用程序应该使用系统默认设置,在其他情况下,我们希望能够非常严 ...

  7. asn1学习笔记

    INTEGER 类型 1.由于这个类型在解码器中没有针对取值范围进行定义.所以在定义的时候要指定取值范围.如: errorcode::=ERRORCODE (1..12345678) ErrorCod ...

  8. 更简洁的log4j日志输出

    参考博客:https://blog.csdn.net/guoquanyou/article/details/5689652 只输出到文本,不输出到控制台 log4j.rootLogger=debug, ...

  9. 那些年,想和你一起认识的SpringCloud Eureka

    前几天鲁班LB跟我说:你玩把游戏都要半个钟啦,为何不用这时间来看看书,如果涨工资还可以帮我买个皮肤. 面对如此合理的这需求,但我不以为然,事实上并不是我不想学习,而是 ↓ 实力不允许呀~ 直到有一天, ...

  10. 0 MapReduce实现Reduce Side Join操作

    一.准备两张表以及对应的数据 (1)m_ys_lab_jointest_a(以下简称表A) 建表语句: create table if not exists m_ys_lab_jointest_a ( ...