![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 70
liiain
问就是十八清纯男大
展开
-
C++的初始(2)
其实不看编译啥的,流氓点就是我写完函数会生成一串东西,这串东西的第一句会被找到从而来使用这串东西,c语言中这串东西的第一句不被修饰,C++中则会去修饰一下从而形成的函数重载。在我们学习c语言我们便知道不能有重复的同名函数,但是再c++中我们可以在不同的命名空间去命名相同的名字的函数,因为这些函数在不同的作用域。我们在Linux操作系统下去查看他们的汇编代码(我也是萌新,听的懵懵懂懂的,借用杭哥的图,毕竟我也不会Linux)还有就是返回值的问题,两个函数完全相同,但是返回值不同,这也是不构成重载的。原创 2024-04-06 16:20:22 · 217 阅读 · 1 评论 -
初始C++(内联函数)
inline函数不支持声明和定义分离开,因为编译器一旦将一个函数作为内联函数处理,就会在调用位置展开,即该函数是没有地址的,也不能在其他源文件中调用,故一般都是直接在源文件中定义内联函数的,即下图。我们不是用递归的情况下,频繁使用一个函数,在c语言中我们会使用宏来定义这个函数,但是宏定义是有缺陷的,祖师爷看这个宏很不爽,就衍生出了内联函数。因为我是小白我也不是很清楚栈,基本的函数的调用会建立栈帧,频繁的调用函数会消耗大量的栈帧,从而是程序的效率降低,而内联函数就是去解决这个问题。那么什么是内联函数呢?原创 2024-04-12 11:10:55 · 189 阅读 · 0 评论 -
C++(构造函数详解)
我们可以看到我们写完这个日期类的时候应该初始化,然后之后的每次调用这个日期类都要使用一便初始化,图上只写了两个,如果十多个呢?这时候我们的程序就显得十分麻烦。我们是否可以有一种函数可以使我们不用经常使用初始化函数。构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时由编译器自动调用,以保证 每个数据成员都有 一个合适的初始值,并且在对象整个生命周期内只调用一次。原创 2024-05-12 15:05:07 · 359 阅读 · 0 评论 -
C++(析构函数)
但是: main函数中不能直接调用Time类的析构函数,实际要释放的是Stack类对象,所以编译器会调用Stac类的析构函数,而Stack没有显式提供,则编译器会给Stack类生成一个默认的析构函数,目的是在其内部调用Time类的析构函数,即当Stack对象销毁时,要保证其内部每个自定义对象都可以正确销毁main函数中并没有直接调用Time类析构函数,而是显式调用编译器为Stack类生成的默认析构函数。注意:创建哪个类的对象则调用该类的析构函数,销毁那个类的对象则调用该类的析构函数。原创 2024-05-13 15:22:37 · 314 阅读 · 0 评论