Visual Studio C++学习笔记
第七章 构造函数
第六章 C++类学习
第五章 如何在VisualStudio中调试代码
第四章 C++链接器是如何工作的
第三章 C++编译器是如何工作的?
第二章 浅谈编译器和链接器
第一章 新建工程及build项目
前言
今天学习了C++中构造函数的基本知识
构造函数
构造函数
构造函数是一种特殊类型的方法,它在每次实例化对象时运行
我们结合代码来看一下:这里写一个类,定义两个变量x,y。定义一个打印x,y值的函数Print。
在main函数中实例化,然后调用Print函数。
可以看到它工作正常,但输出了一些看似随机的值。这是因为我们实例化Entity,并为它分配内存时,实际上并没有初始化那个内存,所以内存里还是原来的东西。
我们可以尝试在main中直接输出x,y的值
可以看到这里连编译都没有通过,显示变量未初始化。所以我们需要一个方法当构造一个Entity实例时,把x,y设为0(除非他们已经被指定了值)。
你可能会想到,我们直接在类中定义一个初始化方法,将这两个值初始化就好了,下面是结果,这样是可以的。
但这样意味着我们每写一个类或者调用一次都需要初始化一下,这明显很不方便,于是就有了构造函数。
这是一种特殊类型的方法,每次你构造一个对象都会调用的方法。他没有返回类型,它的名称必须与类的名称相同,像下面这样,括号中可写可不写,是可以正常编译的,与我们使用Init方法的结果是一样的,现在我们不再需要Init了。
现在我们来试试有参数的构造函数,这里还涉及到了重载函数的部分
可以看到正常输出值
总结
以上就是今天要讲的内容,本文仅仅简单介绍了C++构造函数的概念,后面会继续对其学习。