https://s3.ax1x.com/2021/01/21/s4crsU.png

BBing's Blog

自由 分享 合作

Hugo搜索工具hugo-algolia2

本站原来使用lunr.js作为搜索引擎,在使用过程中发现一些问题:

  1. 客户端需要下载索引文件
  2. 会出现搜索失效的情况

故本站改为algolia搜索,使用hugo-algolia创建algolia索引文件时发现,hugo-algolia仅针对英文分词,并且会包含一些无用词。hugo-algolia项目master分支超过一年未更新,且issue也较长时间未作出回复,所以本项目hugo-algolia2 clone自hugo-algolia,在其ISC许可下作为单独项目开发。


为什么看这么多“没用的”东西

起点

我的起点已经比很多人低了。

大概三年前,大部分同学都在刷题、看书准备找工作的时候,我却是悠哉悠哉,并不在意,完全沉浸在自己当时的工作中。或许很多人会有和我一样的想法:看这些没用的东西干嘛?太功利了,我不屑。


[转载]C,C++安全指南

目录 1 通用安全指南 I. C/C++使用错误 1.1 不得直接使用无长度限制的字符拷贝函数 1.2 创建进程类的函数的安全规范 1.3 尽量减少使用 _alloca 和可变长度数组 1.4 pr

现代C++容易忽略的一些特性

持续更新中…主要来源在这里, 仅摘抄部分个人不常用或者不太理解的知识点.

语言

if/switch 变量声明强化[C++17]

C++17 使得我们可以在 if(或 switch)中使用局部变量:

1
2
3
4
5
// 将临时变量放到 if 语句内
if (const std::vector<int>::iterator itr = std::find(vec.begin(), vec.end(), 3);
    itr != vec.end()) {
    *itr = 4;
}

博文聚合站-RSSBlog

RSSBlog RSSBlog 是一个基于RSS的博客内容聚合站. 想法来源: https://github.com/volfclub/travellings 及 https://front-end-rss.vercel.app/ 定位 这是一个值得一直思考的问题. 当初打算写RSSBlog是因为在个人博客添加友链时遇到

C++类的内存分布(二)

《C++类的内存分布》中, 我们使用gdb大概了解了C++类的内存结构, 并得到了以下结论:

  • 类成员函数只有一份,所有实例共享
  • 类的成员变量有多份,不同实例维护不同的成员变量
  • 即使是继承关系,派生类的成员变量也只是基类的复制体,而不是指向同一块内存
  • 派生类会把从基类继承过来的成员变量当做自己的普通成员变量一样看待
  • 类的虚表只有一份,所有实例共享
  • 编译器在编译的时候, 通过给类添加__vptr指针指向虚表而得到虚表地址.

本文主要目的是扩展vptr和vtable部分, 深入了解C++多态的实现原理.