摘要:
在C++11中,constexpr 函数有着严格的限制:函数体通常只能包含一条return语句(有时可以使用一些简单的表达式,但不能有循环、局部变量等)。 1 // error: body of 'constexpr' function 'constexpr int func(int)' not a 阅读全文
posted @ 2026-04-13 16:56
西兰花战士
阅读(4)
评论(0)
推荐(0)
摘要:
变量模板 变量模板(Variable Templates)是C++14引入的一个新特性,它允许我们定义模板化的变量。我们可以创建一个变量,其类型或值依赖于模板参数。 基本语法 变量模板的声明和定义类似于函数模板。基本语法如下: 1 // 变量模板 2 template<typename T> 3 c 阅读全文
posted @ 2026-04-13 16:47
西兰花战士
阅读(2)
评论(0)
推荐(0)
摘要:
C++14 引入了泛型 Lambda(Generic Lambdas),允许在 Lambda 表达式中使用自动类型推导,使得 Lambda 表达式可以接受任意类型的参数。这是通过使用 auto 关键字作为参数类型来实现的。 在 C++11 中,Lambda 表达式的参数类型必须明确指定。而 C++1 阅读全文
posted @ 2026-04-13 16:24
西兰花战士
阅读(2)
评论(0)
推荐(0)
摘要:
为什么需要初始化捕获? 在C++11中,Lambda表达式的捕获列表有一定的局限性: 只能捕获当前作用域内存在的变量(通过值 [=] 或引用 [&])。 只能直接捕获变量名,无法在捕获时执行表达式(比如移动操作、调用函数初始化等)。 这导致了一些问题,例如: 无法移动捕获(Move Capture) 阅读全文
posted @ 2026-04-13 16:12
西兰花战士
阅读(5)
评论(0)
推荐(0)

浙公网安备 33010602011771号