blog
AABB-Plane-intersection 的算法原理和 Unity 实现
写这篇博文的起因是我在学习 runtime 的 mesh 切割算法时需要判断目标 mesh 是否和切面相交(不相交的话我就不需要去处理了)
C++内存模型和原子类型操作
聊聊C++并发编程中比较高级的无锁编程。
内存模型基础
对象和内存位置
- 每一个变量都是一个对象,包括作为其成员变量的对象。
- 每个对象至少占有一个内存位置。
- 基本类型都有确定的内存位置(无论类型大小如何,即使他们是相邻的,或是数组的一部分)。
- 相邻位域是相同内存中的一部分。
SFINAE 的发展史
说到 C++ 的模板技术,有一个术语不得不提:SFINAE (读作 Sfee-nay,Substitution Failure is Not An Error )。这个技术使得 C++ 这样的静态语言在一定程度上可以实现类似反射的功能 (可以根据类型的特征,表现出不同的行为)。在 C++20 标准概念库发布之后,许多运用到 SFINAE 技术的场景都可以被概念取代,这一古老的技术也许也将退出历史舞台。
当然,这不是一件值得悲伤的事情,这说明标准委员会在积极地寻求摆脱历史的包袱的途径。
这篇文章旨在向想要了解 SFINAE 的读者介绍这一技术的发展历史。
二十年以来对RSA密码系统攻击综述
这篇文章翻译自Dan Boneh的Twenty Years of Attacks on the RSA Cryptosystem,其中部分译文参考了二十年以来对 RSA 密码系统攻击综述 (seebug.org)~~(但是这个译文机翻有点重,而且公式也没有了)~~。希望通过这篇文章,对目前常见的RSA攻击进行一个总结以及较为深入的了解。