C++ 模板与微控制器编程优化
1. C++ 模板特性
1.1 变量模板
C++14 引入了变量模板,它除了类类型和函数外,还能让变量成为模板。变量模板可以提升泛型编程能力,降低模板代码的复杂度。
以下是设置 prime_number 变量模板值的示例代码:
template<typename T>
constexpr T prime_number = T(541);
constexpr std::uint16_t p = prime_number<std::uint16_t>;
在泛型数值编程中,变量模板特别有用。例如,定义两个著名数学常数的可扩展表示:
template<typename T>
constexpr T pi = T(3.1415926535'8979323846'2643383279'5028841972L);
template<typename T>
constexpr T e = T(2.7182818284'5904523536'0287471352'6624977572L);
考虑一个非平凡的数学计算,如 Stirling 对大参数的 Gamma 函数的二阶近似:
#include <cmath>
template<typename T>
T t
超级会员免费看
订阅专栏 解锁全文
2万+

被折叠的 条评论
为什么被折叠?



