腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
为什么
在
consteval
函数
中
使用
std
::
reverse
可以
编译
,
而
不是
constexpr
c++
、
std
、
clang++
、
c++20
、
compiler-explorer
在
带有x86-64clang11.0.0的
std
=c++20的CompilerExplorer上
使用
这个小代码片段
可以
编译
和运行。#include <algorithm>{
std
::
re
浏览 28
提问于2021-01-21
得票数 0
回答已采纳
1
回答
用于描述在
编译
时已知但不为
constexpr
的
函数
参数的名称。
terminology
、
c++20
、
consteval
consteval
函数
的论点是:
consteval
int foo(int n) {} 但是,不能将它作为
constexpr<
浏览 2
提问于2020-05-13
得票数 1
回答已采纳
1
回答
仅仅是定义,
而
不是
关键字就足够了吗?
c++
、
language-lawyer
、
c++20
编译
时关键字:
constexpr
、
consteval
和constinit的规则似乎定义得足够好,以便
编译
器
在
错误应用标签时发出警告。
编译
器
可以
在所有地方应用规则来确定,实际上,代码是否
可以
使用
编译
时关键字之一,并强制每个语言规范尽可能
编译
,就像
编译
时关键字已经应用一样,这是有意义的。或者,至少,如果一个
编译
时关键字被应用于一个
函数
,并且如果应用了
浏览 2
提问于2021-11-08
得票数 5
回答已采纳
1
回答
如何用
编译
时间常数保证堆栈变量的初始化
c++
、
c++20
、
constexpr
、
consteval
、
constinit
在
C++20
中
,我们现在有了constinit。
constexpr
和
consteval
.我还
可以
确保
使用
编译
时执行的
consteval
函数
的结果初始化堆栈变量。 但是,如何强制运行
constexpr
函数</
浏览 2
提问于2022-01-10
得票数 2
回答已采纳
1
回答
函数
不能用作“
constexpr
”
函数
。
c++
、
c++20
auto foo(auto p, auto x) noexcept { return 1; return 0;::is_integral_v<
std
::decay_t<T>>; 0);*/第一条返回语句
在
最新的gcc主干上
编译
得很好,
而
第二条语句没有
编译
,错误消息如下有人能告诉我
为什么
吗?, T x) n
浏览 1
提问于2021-03-30
得票数 14
回答已采纳
1
回答
将
constexpr
更改为
consteval
会在MSVC中导致无法理解的错误消息。
编译
器错误或有问题的代码?
c++
、
compiler-errors
、
c++20
、
constexpr
、
consteval
我有以下模板/
编译
时实用工具助手
函数
。当所有内容都是
constexpr
时,它在所有三个
编译
器( MSVC,GCC,clang)中都工作得很好,但是将一些位改为
consteval
会在MSVC中导致一个奇怪的错误。我想把我所有的
constexpr
机器尽可能多地迁移到
consteval
上,但是这个问题帮不上忙。Args> [[nodiscard]]
consteval
std
::optional<size_t>
浏览 48
提问于2021-07-14
得票数 0
回答已采纳
1
回答
模板的C++概念.值和参数包
c++
、
c++20
、
c++-concepts
>为真
constexpr
static auto equal_v = []()
consteval
static_assert(sizeof== first_value) && ...); 因此,这里有几点: 是否有一种优雅的方法来
使用
概念来限制模板值的类型
而
不是
模板类型参数?是否有一种方法
可以
限制模板参数包
中
相互依赖的类型,
而
不修
浏览 2
提问于2021-01-30
得票数 1
回答已采纳
1
回答
同龄人中的非常数
函数
std
::to_string(int)
c++
、
lambda
、
compiler-errors
、
c++20
、
consteval
我
在
以下lambda
函数
中
遇到了
std
::to_string()问题:#include <string> { {GCC v11.2上<em
浏览 9
提问于2022-01-15
得票数 1
1
回答
使用
consteval
调用不断地内联
函数
c++
、
visual-c++
、
constants
、
constexpr
、
consteval
我有一个
consteval
crc32
函数
,它在
编译
时工作得很好。我希望这个
函数
在
另一个常量内联
函数
中
使用
。为了更好地理解,这里有一个代码示例: auto n = 0; printf("%d"
浏览 10
提问于2021-10-24
得票数 0
3
回答
同级
函数
是否允许依赖于
函数
参数的模板参数?
c++
、
language-lawyer
、
constexpr
、
c++20
、
class-template
在
C++17
中
,此代码是非法的: return
std
::integral_constant<int, i>::value;这是因为即使
可以
在
编译
时计算foo,
编译
器仍然需要生成在运行时执行它的指令,从而使模板实例化成为不可能。
在
C++20
中
,我们将有
consteval
函数
,这些
函数
需要在
编译<
浏览 0
提问于2019-05-14
得票数 87
回答已采纳
1
回答
渐变方法的解密类型(fun())
c++
、
c++20
、
consteval
我
可以
用GCC 10.2.0和Clang 11.0.0 (如预期)
编译
它:struct T { using type =
std
::remove_cvref_t<decltype(fun())>; decltype(T<1>::fun()) a = 1;
浏览 2
提问于2020-11-10
得票数 6
回答已采纳
1
回答
我如何参数化一个同龄人兰巴?
c++
、
c++20
背景template<auto getStrLambda> static
constexpr
std
::string_view myString{getStrLambda()}; using TypeWithString = MyType问题 我现在的问题是,为了使它更容易
使用
,如何编写一个包装器<e
浏览 3
提问于2022-10-14
得票数 1
回答已采纳
1
回答
如果需要
consteval
是为了什么?
c++
、
constexpr
、
consteval
、
c++23
C++23将引入if
consteval
。它将用于何处?它与
constexpr
if有何不同
浏览 31
提问于2021-07-01
得票数 8
回答已采纳
2
回答
为什么
在
编译
过程
中
不保证会运行呢?
c++
、
constexpr
、
consteval
为什么
在
编译
过程
中
不保证会运行呢? 此外,
为什么
要添加
consteval
而
不是
更改
constexpr
以保证
编译
时执行?
浏览 3
提问于2022-03-31
得票数 0
回答已采纳
2
回答
在
编译
时
使用
向量计算的构建器模式(带有“compile”)
c++
、
design-patterns
、
c++20
、
builder
我正在尝试创建一个类,它遵循构建器模式,并且在
编译
时完全运行(
在
C++20
中
使用
新的
consteval
关键字),但是我所做的任何尝试都不起作用。例如,这是行不通的:{
std
::vector<int> data;
consteval
MyClass& setData() this->dat
浏览 5
提问于2022-06-04
得票数 2
回答已采纳
2
回答
如何
使用
C++
constexpr
函数
返回
编译
常数字符串文字
c++
、
visual-c++
、
constexpr
、
compile-time
我有一个
constexpr
函数
,我试图从__FILE__宏
中
删除文件名,也就是说,删除除路径之外的所有内容。为此,我概述了这个基本
函数
,并将其设置为
constexpr
,希望
编译
器能够推导出结果,并将计算结果作为字符串放在最后的二进制文件
中
。这个
函数
并不完美,只是一个简单的模拟而已。
std
::endl;} 问题是在
编译
时没有对此进行评估(build: MSVC x64发布最大速度优化)。但
浏览 24
提问于2022-10-28
得票数 -1
回答已采纳
1
回答
Enum <->字符串视图之间的映射
c++
、
template-meta-programming
、
c++20
我一直
在
研究某种类型的映射器,它允许我
在
类型之间进行映射。它应该允许两个枚举之间的映射。它
使用
的资源越少越好。效率越高越好(不重要)符合C++20标准我已经创建了一些代码。乍一看,它做我想做的,也有相当容易
使用
的界面,但我
浏览 0
提问于2022-03-03
得票数 3
3
回答
如何获得非静态
std
::数组成员的`.size()`
c++
、
constexpr
、
c++20
、
stdarray
在下面的代码片段
中
,假设
std
::array<T,N>::size是
constexpr
MyUnion u; //invalid use of non-staticdata member 'Fo
浏览 3
提问于2021-02-07
得票数 0
回答已采纳
1
回答
为什么
即时
函数
在
默认情况下
不是
noexcept,
为什么
它们被允许是noexcept(false)?
c++
、
c++20
、
noexcept
、
consteval
从c++20开始,我们
可以
通过
使用
consteval
说明符来定义即时
函数
。当一个
函数
被声明为
consteval
时,对该
函数
的每次调用都必须生成一个
编译
时常量,否则程序就是错误的。此外,由于c++20的try-catch块
在
常量计算的上下文中是允许的,但是仍然不允许抛出异常。正因为如此,我最初认为,正如
consteval
暗示的那样,inline也意味着noexcept,因为抛出任何异常都是被禁止的。正如您现在
可
浏览 34
提问于2020-05-23
得票数 3
1
回答
为什么
“警察”不像预期的那样表现?
c++
、
compiler-errors
、
c++20
、
constexpr
、
consteval
inline
consteval
unsigned char operator""_UC(const unsigned long long n) return static_cast<unsigned
constexpr
char f2(auto const octet) return char(octet >> 4_UC);{ auto c2 = f2('
浏览 1
提问于2022-03-27
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C++20:核心语言
C+23 特性概览
从 C+98到C+17,元编程是如何演进的?
C+11及以上新特性大揭秘:现代化编程语言的必备利器
令人沮丧的C++性能调试
热门
标签
更多标签
活动推荐
运营活动
广告
关闭
领券