C++11学习笔记 2.3auto、头文件防卫、引用、常量

一、C++11中auto:变量的自动类型推断

auto可以在声明变量的时候根据变量初始值的类型自动为此变量选择匹配的类型,声明时要赋予初值
auto自动类型推断发生在编译期间,随意使用auto不会造成程序效率降低

二、头文件防卫式声明

#ifndef ddd_h
#define ddd_h

#endif

三、引用

为变量起了另外一个名字,一般用&符号表示
定义引用,并不额外占用内存,或者理解成,引用和原变量占用同一块内存。
定义引用时必须初始化
引用必须绑定到变量上,对象上也可以,不能绑定到常量上
int a=3;
float &red=a;//不可以,类型必须要相同

四、常量

const:表示不变
shift+F9查看地址
const int var=7;
int &var2=(int &)var;//强制转换为引用
var2=18;
cout<<var<<endl;//7
cout<<var2<<endl;//18
加断点调试时都是18 可能编译器做了什么手脚,var和var2不是一个地址,写代码不要这样

constexpr 关键字:C++11引入,也是常量的概念,在编译时求值,能够提升性能
constexpr int var=1;
int b=5;
constexpr int var2=b;//b是变量,var2是常量
constexpr int func(){}//
constexpr int var2=func();//对func内有要求 函数中的变量必须初始化,for循环cout<<i会报错
int k2=func();//相当于普通函数调用

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值