c/c++
大音若希
这个作者很懒,什么都没留下…
展开
-
虚基类,虚函数,纯虚函数,抽象类的区别与联系
虚基类,是继承中的一种机制。解决来自同一个基类的同名类成员浪费内存的问题。在虚基类的继承方式中不为虚基类成员另开辟空间。不是多态实现的机制。虚函数,是基类中函数存在的方式。解决赋值兼容规则时,派生类对象代替基类对象时,基类指针可以访问派生类定义的基类的同名函数问题。实现派生类替代基类时,基类指针依然可以访问派生类中定义的和基类同名函数,实现函数多态。纯虚函数:是不用给出函数实现的虚函数。用原创 2017-07-15 21:58:37 · 1374 阅读 · 0 评论 -
经典:求指定入栈顺序序列对应的所有可能出栈序列
#include #include #include #include #include #include #include using namespacestd;char str[55];//输入串int len;stackint> stk;char outs[55];//输出串char outi = 0;//输出序列号原创 2017-09-10 00:18:04 · 1916 阅读 · 0 评论 -
区分函数重载、隐藏、函数覆盖,确定使用哪个成员
重载、隐藏与覆盖的概念:函数重载:在相同作用域下,两个或多个函数,具有相同的函数名,但形参的个数或类型不同,编译器根据形参和实参的类型及个数的最佳匹配,自动确定调用哪个函数。隐藏:如果具有两个或多个具有包含关系的作用域,外层声明了一个标识符(变量或函数),而内层没有再次声明同名的标识符,那么外层标识符在内层仍然可见;如果内层声明了同名标识符,则外层标识符在内层不可见,即内层标识符隐藏了外层原创 2017-10-07 13:08:00 · 236 阅读 · 0 评论 -
c++类型兼容规则与虚函数实现多态的实现原理和区别
大一之后就没有系统的学过c++了,最近为了校园招聘,又把c++知识捡出来学习,弄了2个钟头终于把这里面的原理弄懂了。背景:类型兼容规则含义:类型兼容规则指在需要基类对象的任何地方,都可以使用公有派生类的对象来替代。类型兼容规则应用场合:有如下代码:class B{...}class D:public B{...}B b1,* pb1;D d1;派生类的对原创 2017-09-19 21:51:04 · 548 阅读 · 0 评论 -
void函数内创建并返回一个结构体
分析:首先,结构体在函数体内定义,并能将该结构体返回。所以不能定义结构体变量,这样函数结束该结构体变量就销亡了,只能通过malloc申请一个结构体内存,使用结构体指针。其次,该函数无返回值,只能通过参数的形式,将结构体指针返回。最后,通过形参改变实参值的方式有两种:传引用、传指针。不存在对指针变量的引用,所以只能通过传指针的方式,即传指向结构体的指针变量的地址。所以,通过双重指针,实现该功能。#i...原创 2018-06-23 13:34:40 · 2522 阅读 · 1 评论