C++学习笔记一

         之前学过了C、汇编、JAVA,所以决定寒假自学C++,同时觉得技术博客是一个很好的学习交流的平台,所以决定做一些学习笔记。

       由于已经学习了几种类型的编程语言,特别是C和JAVA,所以C++前面的基础都是一遍过,这里主要是列出一些比较陌生的知识点或者是之前学习C时接触过但是基本没有使用过的知识。

       1.一些变量定义修饰符,如:volatile,extern。已经忘记了这两个变量修饰符在学C的时候有没有接触过,不觉得陌生的原因是因为学嵌入式的时候在demon代码中遇到过,volatile修饰符按照书上描述,是“说明一种特殊的变量,值有可能随时变化,用于一些特殊的程序,如I/O设备举动程序和共享内存应用程序等。”,具到底有什么用还不清楚,只记得看嵌入式demon代码的时候,这个关键字是用来修饰寄存器的,用法如下“(volatile int *)register”,但是具体是什么用还是不清楚,因为本身是想要在嵌入式这个方向发展的,所以还是要找机会专研一下volatile。extern指该变量定义在另一个文件中,在学ARM的时候也遇到过,是C++和汇编混合编程时候用到的东西,自己没有用过,C++里extern也可以用于从外部文件导入函数。

        2.sizeof运算符。返回表达式或类型标识所表示的数在内存中所占字节的多少,有两种形式:sizeof(类型标识符)、sizeof 表达式。PS:不同机器的数据类型长度有差异,不仅仅是语言种类决定。

        3.复合类型。

                   (1).枚举了解过,但是没用过,有些地方要注意:系统默认赋值由0开始、如果前一个有赋值而后一个没有则系统默认后一个的值为前一个的值加一、不能直接给一个枚举类型的变量赋一个整数值,如enum day{y,t};

enum today=3是不合法的。

                    (2).共用体。和结构体相似,但是各个变量共享内存,编程时要注意。

                    (3).位域。紧缩的结构体类型,可告诉编译器用多少位去存储数据以此节约内存,但是取数时间增长,存储紧张时使用。

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值