败犬日报 2024-10-25
1. 多行编辑功能
现代编辑器 / IDE 都支持。
vscode 用 Alt+鼠标多次点击,Alt+Shift+鼠标点击,鼠标中键拖动都可以。
2. 还好我不买书我只收藏 pdf
实体书不过是 pdf 手办罢了。
3. 一个 exe 依赖一个 f.dll。我重新编译 f.dll,之前旧的 dll 改了个名字,还在原来目录。这时候我重新运行 exe 会链接到旧的 dll 上吗?
4. vscode 有办法在编辑器查看 git diff 么
直接在 git 插件里面点 staged 或者 changed 文件就能看到。
5. stl 为什么没有实现大整数类型
比如你现在发现没有了。当你之后又能力去写提案的时候,你会愿意花个一两年时间写提案跟进进展,然后最后进了标准库发现自己的项目不够新,完全用不上。还是说,找一个开源库用一下?
与其往标准库加东西,不如早点弄个包管理。
6. 为什么 uint8_t 取反会变成 int
cpp
#include <cstdint>
#include <type_traits>
int main() {
uint8_t x = 0;
static_assert(std::is_same_v<int, decltype(~x)>);
}
算术运算符都会整数提升。
7. Java 能不能鸭子类型
普通的继承:声明的时候得写明它继承了 Duck 类。
鸭子类型:只要这个类实现了 fly(),它就是鸭子。
Go 和动态类型语言(Python, JS)都是采用鸭子类型。(C++ 的 proxy 库可能也是?)
Java 可以通过反射来完成。