auto关键字

auto告诉编译器,在编译期自动推断变量的类型,简单来说就是简化了一些写法。使用它推断类型确实简单方便,但有个基本要求:在使用auto时必须清楚的知道编译器会给auto推断出什么类型

阅读全文 »

const关键字

关键字const表示使某些内容保持不变,编译器通过将任何试图将其更改的行为标记为错误。此外,启动优化后,编译器可以利用这一点生成更好的代码。

阅读全文 »

标准IO简介

IO简单来说就是数据在输入设备,内存,硬盘,输出设备之间移动的过程。

对于C语言,它实现了许多不相关的函数来实现这些过程。例如printf就是让数据从内存到显示屏(输出设备);scanf就是让数据从键盘(输入设备)到内存。此外还有从内存到磁盘的文件操作等。这些函数彼此不相关。

而C++有了继承功能,可以让子类与父类间有关联性,极大的提高各种IO功能之间的耦合性。

于是C++用继承功能重写了IO,这就是IO库。IO库引入了“流”的概念,数据从一个地方流到另一个地方,原本地方的数据就无了,叫做流很贴切。

更多内容详见Part6:IO库,这里简单介绍一下怎么进行输入输出。

阅读全文 »

名称空间

C++经常需要多个团队合作完成大型项目,多个团队就常常出现起名重复的问题,而名称空间就是用来处理不同代码段之间的名称冲突问题。

阅读全文 »

VLD的安装

在网上下载好VLD的库后,准备在VS2022上使用它:

  1. 把VLD的include目录给加入到VS中。这里打开想要使用VLD的项目的属性页,在VC++的包含目录中添加对应的include目录:

  2. 引入VLD的静态库(lib),还是在属性页中,先添加VLD的lib路径至VC++库目录;再将对应的lib文件名添加到链接器->输入->附加依赖项中(记得32位跟64位分开配置):

  3. 引入VLD的动态库(dll),直接在项目所在文件夹中把他们扔进去就好:

  4. 在main.cpp中,首先包含vld.h头文件,即可使用。

VLD的使用

待补充…

使用时碰到的问题

  1. Call Stack 无输出:

    请保持路径是 全英文 的,并且在vld.ini中,将ReportEncoding由ascii改为unicode.

0%