- 博客(6)
- 收藏
- 关注
转载 【转】C++中的虚函数(表)实现机制以及用C语言对其进行的模拟实现
前言大家都应该知道C++的精髓是虚函数吧? 虚函数带来的好处就是: 可以定义一个基类的指针, 其指向一个继承类, 当通过基类的指针去调用函数时, 可以在运行时决定该调用基类的函数还是继承类的函数. 虚函数是实现多态(动态绑定)/接口函数的基础. 可以说: 没有虚函数, C++将变得一无是处!既然是C++的精髓, 那么我们有必要了解一下她的实现方式吗? 有必要! 既然C++是从C语言的基础上发展...
2019-03-11 12:15:54
258
转载 【转】C++虚函数相关知识整理
我们知道,在同一类中是不能定义两个名字相同、参数个数和类型都相同的函数的,否则就是“重复定义”。但是在类的继承层次结构中,在不同的层次中可以出现名字相同、参数个数和类型都相同而功能不同的函数。例如在例12.1(具体代码请查看:C++多态性的一个典型例子)程序中,在Circle类中定义了 area函数,在Circle类的派生类Cylinder中也定义了一个area函数。这两个函数不仅名字相同,而且参...
2019-03-11 12:03:31
242
原创 C++/STL中常用数据结构的底层实现
vector数组,可以通过索引值实现快速访问。list双向链表,支持快速的插入和删除。map红黑树。hashmaphash表。更多详细的内容可参考该网友的博文
2019-03-11 11:35:58
908
原创 Linux内核Hash Table结构及神奇的container_of宏
Linux内核Hash Table结构近期在学习linux内核netfilter框架中有关conntrack和分片重组相关的代码过程中,顺便学习到了内核中hash表的结构。在此记录一下。内核中hash表的定义: struct hlist_head{ struct hlist_node *first; } struct hlist_node { ...
2019-01-22 13:09:08
381
原创 eBPF MAP类型详解
本文主要参考、翻译自参考文档,部分内容为个人翻译时加入的个人见解,仅供参考,如有错误,请不吝支出。linux内核中定义了一下的eBPF map_type:enum bpf_map_type {BPF_MAP_TYPE_UNSPEC, /* Reserve 0 as invalid map type */BPF_MAP_TYPE_HASH,BPF_MAP_TYPE_ARRAY,BPF_...
2019-01-15 11:26:16
3249
原创 local port(本地可用端口)占满后linux系统卡顿问题分析
@[TOC](local port(本地可用端口)占满后linux系统卡顿问题分析)问题背景作为NAT网关的一台机器在流量高峰期出现间歇性卡顿、丢包现象,排查发现PPS/带宽均在正常范围内,CPU间歇性全部被软中断占满。通过查询连接跟踪表发现,超过6W条连接指向同一个目的ip+端口,初步确认问题系因本地端口用尽,新建的连接无法获取可用端口导致的CPU飚高。为了确认该原因,需对内核代码进行分析...
2019-01-11 20:34:20
3597
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人