启动过程总结
emacs 启动在 lisp 源码里的顶级目录中的 startup.el 文件,如
/usr/share/emacs/26.1/lisp/startup.el
运行 load-path 里面每个目录中的 subdirs.el 文件,递归的把所有把子目录添加到路径中。
运行 load-path 中找到的用户创建的 leim-list.el 文件,Emacs 自带的忽略掉。这个文件用于注册输入法。
emacs 启动在 lisp 源码里的顶级目录中的 startup.el 文件,如
/usr/share/emacs/26.1/lisp/startup.el
运行 load-path 里面每个目录中的 subdirs.el 文件,递归的把所有把子目录添加到路径中。
运行 load-path 中找到的用户创建的 leim-list.el 文件,Emacs 自带的忽略掉。这个文件用于注册输入法。
sed 是一个按行处理基本文本的流式处理命令,stream editor 的缩写。它每次只能处理输入文本中的一行,输入的文本可以来自文件或者管道。
sed 常常用于过滤输入的文本,快速的替换等。具体看下面的讲解。
在 C++中,如果一个类中有一个指针成员,就要特别注意拷贝构造函数,一不小心就会出现内存泄露。一个经典的浅拷贝例子:
| |
稍微改下实现深拷贝
在 c++中有一个规则,如果派生类使用基类的成员函数,可以通过 using 声明来完成,如下:
| |
在派生类 Derived 中使用 using 声明,派生类就拥有了两个 fun 函数的版本。派生类传入浮点字面常量 4.5,结果会调用基类的版本。在 c++11 中,这个想法被扩展到了构造函数上,子类可以通过使用 using 声明来声明继承基类的构造函数。继承构造函数只会初始化基类的成员变量,对于派生类的成员变量则无能为力。