C++面试题
面试题积累----C++
~青萍之末~
弱者总有弱者的理由
展开
-
《程序员面试宝典》中的一些面试题
文章目录面试题1--->编程风格问题面试题2--->不用if等判断语句找出两个数中间较大的那个面试题3--->写一个交换两个数据的宏面试题4--->写一个宏返回两个数据中较小的那个面试题5--->char *和char []的区别面试题6--->临界区,互斥量,信号量的区别面试题7--->网络中常见的ping命令属于什么协议?面试题1—>编程风格问...原创 2019-06-03 20:17:40 · 1758 阅读 · 0 评论 -
关于rand7()构造rand10()的问题
已知有个rand7()的函数,返回1到7随机自然数,让利用这个rand7()构造rand10() 随机1~10。 这类问题的解决思路无外乎是将rand7求两遍,利用某种方法巧妙的构造出连续的一组数。上题的解决思路如下: 1. rand7执行两次,出来的数为a1=rand7()-1,a2=rand7()-1。 2. 如果a17+a2<40,b=(a17+a2)/4+1;如果a1*7...转载 2019-05-13 22:26:45 · 369 阅读 · 0 评论 -
C++11新特性
文章目录一、关键字及新语法二、STL容器三、多线程四、智能指针五、其他特性一、关键字及新语法列表初始化:int a{10}。auto:自动类型推导。nullptr:空指针。范围for:for (auto v : vec)。二、STL容器vector:动态数组。list:双向链表。deque:双端队列。priority_queue:优先队列。...原创 2019-04-08 20:08:53 · 381 阅读 · 0 评论 -
继承与接口
文章目录一、重载、重写(覆盖)与隐藏的区别二、私有继承、公有继承、保护继承三、多重继承与虚继承1、多重继承2、类型转换与多个基类3、多重继承demo:4、虚继承5、虚继承demo:四、纯虚函数和抽象类1、面试题--->纯虚函数的实现原理,为什么抽象基类不能被实例化?2、面试题--->如何阻止一个类被实例化?五、运算符重载与四种类型转换1、运算符重载2、四种类型转换一、重载、重写(覆盖...原创 2019-04-08 19:04:48 · 395 阅读 · 0 评论 -
面向对象(构造、析构、拷贝、赋值、友元)
文章目录一、面向对象的基本概念1、面试题--->面向对象的基本原则?2、面试题--->空类会创造哪些成员函数?二、类和结构体1、面试题--->类和结构体的区别?三、成员变量及其初始化四、构造函数和析构函数1、构造函数和析构函数的调用顺序2、面试题--->析构函数为什么要定义为虚函数?3、面试题--->为什么构造函数不能是虚函数?4、面试题--->是否可以把每个函...原创 2019-04-07 21:48:40 · 459 阅读 · 0 评论 -
指针和引用详解
文章目录一、指针和引用的区别1、相同点2、不同点二、引用的概念详解1、引用作为函数参数2、引用作为函数返回值三、指针的概念详解1、指针作为函数参数2、函数指针3、指针数组和数组指针4、野指针/悬垂指针5、this指针一、指针和引用的区别1、相同点 都是地址的概念:指针指向一块内存,它的内容是所指内存的地址(逻辑地址);而引用则是某块内存的别名。2、不同点指针保存的是所指对象的地址(...转载 2019-04-07 16:25:36 · 7752 阅读 · 1 评论 -
一个C++源文件从文本到可执行文件经历的过程
文章目录一、预处理(产生.i文件)1、面试题--->#ifndef,#ifdef,#endif的作用?2、面试题--->#include尖括号和双引号的区别?二、编译(产生.s文件)三、汇编(产生.o或.obj文件)四、链接(产生.out或.exe文件)1、静态链接/库2、动态链接/库 以我们最初学到的“hello world”程序为例。这个程序在编译中是这样进行的,首先执行g++...转载 2019-04-06 21:44:05 · 4553 阅读 · 0 评论 -
C/C++内存分配相关知识详解
一、malloc的底层原理 【Note】:转载 2019-04-06 20:01:06 · 3287 阅读 · 0 评论 -
C++中的关键字
文章目录一、const1、修饰变量2、修饰函数参数3、修饰函数/成员函数4、修饰函数返回参数二、mutable三、static1、限制变量的作用域(隐藏)2、保持变量内容的持久性3、默认初始化为04、C++中的类成员声明static四、extern五、volatile一、const 被const修饰的变量或者函数具有“只读属性”,const可以修饰变量、作为函数参数、修饰成员函数,修饰函数返...转载 2019-03-31 19:28:26 · 1138 阅读 · 0 评论 -
虚函数详解
文章目录一、虚函数实例二、虚函数的实现(内存布局)1、无继承情况2、单继承情况(无虚函数覆盖)3、单继承情况(有虚函数覆盖)4、多重继承情况(无虚函数覆盖)5、多重继承情况(有虚函数覆盖)三、虚函数的相关问题1、构造函数为什么不能定义为虚函数2、析构函数为什么要定义为虚函数?3、如何去验证虚函数表的存在 面向对象的语言有三大特性:继承、封装、多态。虚函数作为多态的实现方式,重要性毋庸置疑。 ...转载 2019-03-09 20:05:26 · 39813 阅读 · 6 评论 -
内存对齐的相关问题
文章目录一、sizeof与strlen区别二、内存对齐(1)内存对齐的规则(2)为什么要使用内存对齐三、判断两个结构体是否相等一、sizeof与strlen区别sizeof 是运算符,结果在编译时计算,不能返回动态分配的内存空间大小;strlen 是库函数,结果在运行时运算。sizeof功能是获取对象字节大小;strlen功能是计算字符串的长度,从字符串开头扫描直到遇到第一个’\0’...原创 2019-03-07 16:22:05 · 835 阅读 · 0 评论 -
STL详解及常见面试题
1、各种容器的特点和适用情况2、各种容器的底层机制(1)vector vector就是一个动态数组,里面有一个指针指向一片连续的内存空间,当空间不够装下数据时,会自动申请另一片更大的空间(一般是增加当前容量的50%或100%),然后把原来的数据拷贝过去,接着释放原来的那片空间;当释放或者删除里面的数据时,其存储空间不释放,仅仅是清空了里面的数据。(2)list 以结点为...原创 2018-06-17 10:41:05 · 30348 阅读 · 8 评论