
c++面经
文章平均质量分 56
代码可敲不了一辈子
这个作者很懒,什么都没留下…
展开
-
c++模板模板参数,可变数量的模板参数
模板模板参数是 C++ 中强大的特性,它使得我们能够编写更通用、可复用的代码,并在处理不同的模板类型时提供灵活性。然而,使用模板模板参数时需要谨慎,确保正确理解其语法和限制,并在需要时进行适当的模板实参推断。:模板模板参数有一些限制。此外,模板模板参数也受到模板参数推断的限制,因此在某些情况下可能需要显式指定模板实参。当使用模板模板参数时,我们可以将一个模板作为另一个模板的参数,从而实现更大的灵活性和重用性。通过将容器类型作为模板模板参数传递,我们可以在算法或函数中使用容器的成员函数或特定操作。原创 2023-11-25 15:50:58 · 377 阅读 · 0 评论 -
奇虎360嵌入式实习面试面经
6月多面的,已经过去一个多月,虽然面试过了,但由于不能马上去,申请offer时被锁了,补个面经吧,整个过程问项目+八股+反问,项目的话被问到不会的了,等下详细介绍,八股的话问到的都是我复习过的,全部都答对了。介绍项目,问的是我写在简历最上面最详细的项目,是一个高并发的服务器,当时是被问到了服务器是如何实现并发,这里主要是线程池,但是当被问到数据库访问是如何实现并发的,这里由于我数据库用的是sqlite3,没有事务功能,且我不会mysql,数据库方面知识存在漏洞,这里的话是需要学习mysql事务和锁相关的知识原创 2022-07-08 14:49:45 · 999 阅读 · 0 评论 -
2022西山居seed游戏开发训练营笔试复盘
1.c基础 char arr1[] = { 'a','b','c','b'}; char arr2[] = { "abcd" }; int arr3[10] = { 0 }; //arr1和arr2的区别 cout << sizeof(arr1) << endl; cout << sizeof(arr2) << endl; //整型数组长度求法 cout << sizeof(arr3)/sizeof(arr3[0]) &l原创 2022-05-08 22:46:31 · 3806 阅读 · 8 评论 -
C++ 归并排序 《剑指offer2》 链表排序
};return l1;return l1;主函数中也是用了递归的一个思想,其实递归这个东西,靠感觉,题做多了自然就会了。这道题就是个缝合怪,用快慢指针找到中间节点,分开,在有序的合并。分而治之的理念体现的淋漓尽致。原创 2022-04-15 17:36:44 · 1164 阅读 · 0 评论 -
c++ 面试摘录(四) | 虚函数的实现机制 继承下的虚表结构
虚函数通过虚函数表来表现。虚函数表存放的内容:类的虚函数地址。虚函数表建立时间:编译阶段,程序的编译过程中会将虚函数的地址放在虚函数表中。在类对象的内存空间保存了指向虚函数表的指针(虚表指针)通过虚表指针找到对应的虚函数表。虚表指针保存的位置:类对象内存空间的最前面,这是为了正确取到虚函数的偏移量。注:虚表和类绑定,可以说虚表只有一张。虚表指针和类对象绑定,一个类的每个对象都有自己的虚表指针,用来指向类的虚函数表。继承下的虚表结构假设如果派生类没有重写基类的虚函数A,原创 2022-03-25 15:41:53 · 718 阅读 · 0 评论 -
析构函数的注意问题以及用new开出来的空间用free释放会怎样 | c++进阶学习一条龙(四)
析构函数的注意问题以及用new开出来的空间用free释放会怎样原创 2022-03-25 10:42:16 · 1932 阅读 · 0 评论 -
类模板使用,用模板类实现单例模式 | c++ 进阶学习一条龙(二)
不用复杂长到不想看的文章,几句话,测试代码运行一遍,马上了解模板#include <iostream>#include <bits/stdc++.h> //c++万能头using namespace std;template<typename T>class Singleton{private: static T* instance;//私有的类对象静态指针public: static T* getIntance();//公有的静态原创 2022-03-25 09:05:19 · 388 阅读 · 0 评论 -
构造函数有哪几种,需要注意的问题 | c++ 进阶学习一条龙(三)
深度分析构造函数,带你了解隐式转换,深拷贝浅拷贝,以及c++11的移动构造函数,不需要长篇大论的文章,几个测试实例轻松解决#include <iostream>using namespace std;class student{ int age; int num;public: //默认构造 student(); //有参构造 student(int age,int num); //拷贝构造 student(stud原创 2022-03-23 21:25:59 · 317 阅读 · 0 评论 -
c++面试摘录(三) | 右值引用
/* 字面量 5、10,它们既没有名称,也无法获取其存储地址 (字面量通常存储在寄存器中,或者和代码存储在一起),因此 5、10 都是右值。*/ int num=5; //int &a=5; 这种情况属于左值引用 无法操作右值 int &a=num; int &&b=10;//通过右值引用操作右值 cout<<a<<" "<<b;...原创 2022-03-23 17:29:57 · 577 阅读 · 0 评论 -
c++面试经验 | 锐捷网络嵌入式委培班 (一)
今天参加了锐捷网络在我们学校开设的委培班,以为讲的东西不会很难,内容也确实不难,都是基础,但我都不会,突然考c的内容,让我措不及防,每个公司都会有考校的侧重点,而锐捷网络我听他们的面试官说c的内容是很重要的,而且做c++的不会c也不行啊,下面就来看看他们给出的一些重点:1.运算符若d为double型变量,则表达式d=1,d+5,d++的值是多少 答案是1.0逗号运算符确保操作数被顺序地处理:先计算左边的操作数,再计算右边的操作数。右操作数的类型和值作为整个表达式的结果。左操作数只是为了副作用需要原创 2022-03-12 18:40:47 · 1391 阅读 · 0 评论 -
c++面试摘录(二) unordered_map和map的底层原理
unordered_map和map的底层原理原创 2022-03-11 15:11:42 · 13407 阅读 · 0 评论 -
AVL树(平衡二叉树)的底层原理以及实现
前言Wiki:在计算机科学中,AVL树是最早被发明的自平衡二叉查找树。在AVL树中,任一节点对应的两棵子树的最大高度差为1,因此它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下的时间复杂度都是{\displaystyle O(\log {n})}。增加和删除元素的操作则可能需要借由一次或多次树旋转,以实现树的重新平衡。AVL 树得名于它的发明者G. M. Adelson-Velsky和Evgenii Landis,他们在1962年的论文《An algorithm for the org...转载 2022-03-11 14:15:04 · 1564 阅读 · 2 评论 -
面试问题摘录(一)c++类对象的初始化顺序
c++类对象的初始化顺序,有多重继承的初始化顺序#include <iostream>using namespace std;class A{ public: A(){ cout<<"A"<<endl;} virtual ~A(){ cout<<"~A"<<endl; }};class B: public A{ public: B原创 2022-03-08 23:13:12 · 1669 阅读 · 3 评论