Posts by Year

2023

C++ range based for循环中的生命周期

在C++中,Range-based for循环(range-based for loop)是一种简化遍历容器和数组元素的方法。然而,当处理生命周期和临时对象时,可能会遇到一些问题。在本文中,我们将讨论Range-based for循环中的生命周期问题。

Shift Or Multiply

移位or乘法 今天在面试c++的时候,把向右移位8位写成了*256,我辩解说编译器可以把*256优化为<<8。 但是真的会这样吗?我用Visual Studio 2017进行了实验。结果如下 a = a * 256; 009A17D0 mov eax,dword ptr [a] ...

Swap

Use std::iter_swap, std::ranges::swap or using std::swap; swap(...,...), don’t use std::swap.

Is C++ std::function slow?

std::function 这不是一篇介绍如何使用std::function的文章。我们假定读者对std::function已经非常熟悉了。在这篇文章里我们要深入的研究一下std::function函数调用operator()的性能。我们将通过三个案例,来研究调用std::function时的性能。

C++ 整型备忘

这是2017年的旧文。因为硬盘坏了,原版的markdown丢失了,只剩下了生成软件生成的的html还保留在github上。把这篇旧文稍微整理修改一下,作为记录。

Beautiful Disassembly

std::chrono https://godbolt.org/z/G4qaTM #include <chrono> using sec = std::chrono::milliseconds; using frame = std::chrono::duration<int32_t, std:...

使用 ChatGPT 分割合并文件有感

我有一些数据,想保存在未来十年看起来不会倒闭的并且我有权限访问的公共存储上。我自然就看上了微软家的网盘——GitHub。然而,微软家的网盘只支持小于50MB的文件。因为是当作archive存储用,我当然可以接受将文件分割成小于50MB的小文件,然后分别上传。但是微软家的网盘速度也不快,所以我最好还要压缩一下。于是...

Back to Top ↑

2018

视界问题

“宇宙视界(英语:Cosmological Horizon),是指能够接收信息的可测量距离。这种对观测的限制来源于广义相对论,和宇宙学标准模型。宇宙学视界界定了我们可观测宇宙的范围。”(维基百科)

Back to Top ↑

2017

Back to Top ↑