c++11/14新特性学习

1.__func__ 预定义表示符

返回所在函数的名字

#include<string>
#include<iostream>
using namespace std;
const char* hello(){return __func__}

int main()
{

    cout<<hello()<<endl;
}

打印结果:

hello

2.__VA__ARGC__

可以在宏定义的实现部分替换省略号所代表的字符串

#define PR(...) print(__VA__ARGC__)

#include<stdio>

#define LOG(...) {\
fprint(stderr,"%s:Line %d:\t",__FILE__,__LINE__);\
fpint(stderr,__VA__ARGC__);\
fprint(stderr,"\n");\
}

int main()
{
int x =3;
LOG("x=%d",x);


}

打印结果:

main.cpp : Line 12: x=3

3.long long 整型

long long 和 usigned long long 不同平台有不同长度,但至少64位

long long int a = 90909090LL;

usigned long long int b= 23434322ULL;

等价类型:

long long ,signed long long ,long long int, signed long long int;

同理 usigned long long;

4.__cpluscplus

在c和c++混编的时候,我们的头文件有如下声明:

#ifded __cpuscplus

extern "c"

{

#endif

//代码段

#ifded __cpuscplus

}

 

#endif

 

5.快速初始化成员变量

可以用{}进行初始化

string str("hello");

6.序列for循环

在C++中for循环可以使用类似java的简化的for循环,可以用于遍历数组,容器,string以及由begin和end函数定义的序列(即有Iterator),示例代码如下:

map<string, int> m{{"a", 1}, {"b", 2}, {"c", 3}};  

for (auto p : m){  

  cout<<p.first<<" : "<<p.second<<endl;  

未完待续。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值