Chapter 9<C++ Primer Plus>

接下来的一个系列都是进行C++的知识点积累,其实之前就已经看过两次这本书了,但是练习题没做,编程看了大概思路就自以为懂了,没有项目接触没有实际题目去思考去解决,也就导致了现在出现了三个方面的问题。

1. 对于框架的认识停留在表面,也就是处于能够看懂基本流程,却在面临相同或者类似问题的时候却没法解决。

2. 很多时候在编程过程中出现很多小问题,语法也好,不会debug也好,都是同样的问题,练得太少。

3. 对于编程问题没有编程思想,对于问题的解决和想法依旧处于学生阶段,对问题的思考角度处于解决就行,不会深入去思考。


以上部分纯属个人声明发表,无所谓好坏,也无所谓对错。愿自己能够好好对待自己的生活。


Chapter 9 内存模型与命名空间

1. 头文件:包含结构声明和使用这些结构的函数原型

2. register 寄存器变量声明关键字 旨在提高访问变量的速度

3. 常量表达式初始化时一种动态初始化,在编译后即初始化

4. 外部变量可直接在函数中定义,但其他文件要使用,均必须声明,定义与声明均要用extern关键字

5. 

file 2: 
  static int errors = 5;
  void froobish() {}
file 1:
  int errors = 20;	//errors外部变量
file1与file2位于同个项目文件中,关键字static指出标识符errors的链接性为内部[只在程序运行时初始化一次,重复调用会在原来的基础上修改(上一次调用)]

6. 动态内存由运算符new和delete来控制,而不是由作用域和链接性规则控制,一般而言,C++存在自动释放(delete)的机制,但是作为一个良好的编程习惯,保证永远好过可能

7. sizeof关键字,不是函数:返回一个对象或者类型的长度

①定义在stddef.h,一般定义为typedef unsigned int size_t,类型为size_t,单位是字节

②当数组作为函数形参时退化为指针类型, sizeof(*) = 8(在32位系统中), 16(在64位系统中)

③结构体字长计算两原则:

a. 整体空间必须是体内最大数据类型成员的整数倍

b. 内存按数据成员的先后排列,当遇到最大成员时,已摆放和未摆放的空间大小都必须是该成员的整数倍

关于所占空间大小的几个小知识点:

1. 空类大小为1,,空类的继承和多重继承大小也为1,虽然空类中并没有任何占内存大小的类型,但是作为一个类,在定义的同时又必须占有内存,否则就无法使用这些实例,因此sizeof的结果是1

2. 对于含有虚函数的类sizeof的结果为8,类中有一个虚函数的映射表,存在指向虚函数的指针,一个映射表中有多个虚函数。

3. static函数不占大小,static数据成员不归class,此是放在静态区中,是一个共享的作用域

4. 位域与位段用得比较少,等用到时再仔细分析一波吧。


8. new作为定位运算符时,最好结合具体例子来谈。每次开辟空间时,都会从指定的内存空间进行开辟,从首地址默认开始

9. 有效地组织策略:①使用头文件来定义用户类型/类,数据类型和函数原型;②函数定义放在File2中;③业务逻辑实现放在File3中

10. 类实例化为对象时,对象的成员占据不同的内存为止,但成员函数却只占一个 。



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了python应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值