在使用ES时有时候我们需要修改索引信息;
本文总结了如何修改索引信息;
在使用ES时有时候我们需要修改索引信息;
本文总结了如何修改索引信息;
最近做的项目用到了ES,这里总结一下;
在前一篇文章《浅谈函数调用》中,我们讲述了函数调用的底层实现,也看到了函数是如何切换上下文,并保存相关信息的;
本文在上篇文章的基础之上,探讨最近非常火热的协程的底层实现,剖析开源库 libco 的实现,并在此基础之上实现一个简单的协程;
源代码:
相关文章:
在任意一门编程语言中,函数调用基本上都是非常常见的操作;
我们都知道,函数是由调用栈实现的,不同的函数调用会切换上下文;
但是,你是否好奇,对于一个函数调用而言,其底层到底是如何实现的呢?
本文讲解了函数调用的底层逻辑实现;
相关文章:
由于历史原因,C++存在多个厂商的编译器,主流的包括GCC、G++、MSVC、clang等;
本文介绍了这几个编译器之间的关系,以及各个编译器常用的命令参数;
有时候我们有需要查看代码对应汇编的需求,此时可以使用 Compiler Explorer 在线实时查看;
网址:
Github 开源仓库地址:
在前面的文章《深入理解C++中的move和forward》中,我们提到了为了避免对数据进行复制,在C++11中增加了move语义;
本文继续这个话题,来聊聊关于编译器优化中的RVO;
关于前一篇文章:
源代码:
如果远程的分支删除,本地会存在一个追踪的远程已经不存在的一个分支origin/xxx;
如果这种分支太多,本地的分支看起来会特别乱;
本文讲解了如何管理Git在本地的远程分支追踪;
GoogleTest是Google开源的一个测试框架,使用这个框架我们可以很方便的对我们的项目进行测试;
本文讲述了GoogleTest的基本使用;
源代码:
在C++11标准之前,C++中默认的传值类型均为Copy语义,即:不论是指针类型还是值类型,都将会在进行函数调用时被完整的复制一份!
对于非指针而言,开销及其巨大!
因此在C++11以后,引入了右值和Move语义,极大的提高了效率;
本文介绍了在此场景下了两个常用的标准库函数:move和forward;
源代码: