![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
那我就换个名字吧
这个作者很懒,什么都没留下…
展开
-
简说C++中define与const的区别
依旧是由于腾讯的面试,我意识到自己的渣。。。面试官问我宏定义的define和const的区别,我只回答了宏定义是预编译,所以速度上比const更快一些,剩下的没回答什么。虽然我也知道define不仅可以定义数,还可以定义函数,但是当时确实没有往这个方向想,所以我想在这里总结一下,为以后的面试和开发做准备。在说区别之前,有几点背景知识是我们需要掌握的。(截图说话,侵删)这是C语...原创 2019-03-20 21:50:35 · 448 阅读 · 0 评论 -
C++虚函数概念及使用(基础)
所谓基础不牢,地动山摇。当面试官问到我虚函数和虚析构函数的时候,我真的一点都记不起来了,于是胡说八道,出丑万分。今天就总结一下虚函数的一些内容吧。依照我的习惯,我们先看几个问题:什么是虚函数? 什么是多态性? 多态性是怎么实现的?以上三个问题我完全搞混了,所以面试当场气氛很尬。接下来抱着解决问题的态度来复习一下这些知识点,希望以后能记住。什么是虚函数?在某基类中...原创 2019-03-25 14:53:38 · 5767 阅读 · 5 评论 -
C++重载与多态
问:函数重载和函数多态是什么关系?答:重载包括多态吧,重载还有运算符重载。。。。。。。于是,尴尬了。这篇文章说一下重载与多态的区别。其实,重载和多态无论从本质还是从表面上都是不同的。重载overload:函数名相同,但是函数参数不同。调用时根据参数的不同决定调用哪一个函数;多态:函数名相同,函数形参也相同。调用时根据函数类型是虚函数还是普通成员函数决定调用哪一个。所...原创 2019-03-25 18:03:43 · 3546 阅读 · 1 评论 -
C++纯虚函数
一般来说,许多时候基类并不能确定函数的实现方法,只能确定函数的功能。但是函数调用的时候必须要用到该函数。这种情况下,C++提供了一种机制,成为纯虚函数,属于虚函数的一种,体现了面向对象的多态性。#include <iostream>#define PI 3.14using namespace std;class Calculate{ virtual double getP...原创 2019-03-25 18:31:38 · 2910 阅读 · 0 评论 -
简述虚析构函数与纯虚析构函数
基础知识:C++中,一个类在建成时,需要有构造函数初始化。即当一个类的对象在生成时,会先调用构造函数初始化,再执行接下来的其他函数。而在一个类的对象指针被释放的时候,会调用析构函数。即使析构函数不被声明,也会隐式调用析构函数。那么,当一个派生类继承了一个基类,这时候调用析构函数,会发生什么呢?#include <iostream>using namespace std;...原创 2019-03-25 19:56:51 · 1676 阅读 · 1 评论 -
简述虚函数表
前段时间我在博客中简单地说了下C++的虚函数,所谓虚函数,就是C++实现多态性的方法。那么编译器是如何识别虚函数的呢?据百度百科描述,C++并未规定用何种方法实现虚函数,但是大部分编译器厂商都选择使用虚函数表这种方法,那到底什么是虚函数表???虚函数表,称为V-Table。虚函数表是一片连续的内存区域,每个内存单元存放着JMP指令地址。看到这里,可能会比较懵逼,啥是内存单元,啥是JM...原创 2019-04-04 18:00:28 · 6293 阅读 · 5 评论 -
构造函数与拷贝构造函数
拷贝构造函数和构造函数不能分开说,他们都是初始化对象的一种方法。但是我们这里用构造函数辅助说明拷贝构造函数,主要说说拷贝构造函数的声明,用途和使用注意事项。众所周知,构造函数是一个初始化类对象的函数,即使不显示调用,编译器也会隐式调用构造函数初始化类对象。同样的,拷贝构造函数是一种特殊的构造函数,目的也是初始化类对象,同样在不声明的情况下也会隐式调用该函数。而隐式调用拷贝构造函数的时候,我们称...原创 2019-04-03 09:07:15 · 8666 阅读 · 2 评论 -
深拷贝与浅拷贝
前面说到了拷贝构造函数,但是情况并未列举完。我怕文章太长就分开写,看的舒服。有一种情况,那就是当构造函数中有指针操作,怎么办?#include <iostream>using namespace std;class A{private: int *a;public: A(){ a = new int[100]; cout...原创 2019-04-03 09:08:28 · 802 阅读 · 5 评论