cpp的一些冷语法

一些不常用的语法还是需要介绍一下的,不然自以为正确的会在上面耗时很久,虽然这些知识比较冷,但是设计出来还是有用武之地的。

脑子里留个印象比较好。


一、一些内置类型的大小

wchar_t这个内置类型,没有char那么常见,不过如果是实际场景中表示中文和日文等就需要用到了。

float一般大小为一个字的大小,即32位机器是4字节,double顾名思义是双字8字节了。



看来long并不是真的变长了。不同编译器分配的内存可能都不一样的,所以用之前最好还是先sizeof一下了解大小。


二、字面值常量

int a = 10;

int b = 011;

int c = 0x11;(0X11)

分别表示十进制,八进制,十六进制数字。


结果是9.

除了这些前缀,还有后缀表示的常量,如L和U(不分大小写)分别表示unsigned类型和long类型的。


三、引用

引用是变量的别名,使用的时候注意两点:

1.一旦指定对象,不能更换对象。

2.声明的时候必须初始化,即指定对象。


引用可以嵌套

一个对象可以被多次引用

 

四、typename和class的区别。

http://en.wikipedia.org/wiki/Typename
查了好多中文资料都看不懂,还是wiki比较给力。

在普通定义template函数,两者是同义词。

以下情况就不同了:

template <typename T>

void foo(const T& t){

 // declare a pointer to an object of typeT::bar

typename T::bar* p;

}

Now the compiler knows for sure that T::bar is a type, and will correctly makep a pointer to an object of that type.

If you have any questions or ideas ,please feel free to contact me : )

thx.^^


QQ: 1623213673


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值