constexpr 相关问题

constexpr是C ++ 11中引入的修饰符,它通知编译器函数或变量的值是已知的,或者可以在编译时计算。因此,它可以在不可能的地方用作常数。

constexpr的可变长度数组错误

我有一个带有成员函数的类,该函数声明一个数组,数组的大小基于公式。模板 class {constexpr int lookup(const int)const {return n * n + n; ...

回答 2 投票 0

使用Intel C ++编译器定义constexpr类型

我有一个包含静态成员的类,该成员设置为以特定方式评 估的类本身。这是一个示例#include #include struct A {constexpr A(...

回答 1 投票 0

是否有可能将变体的索引作为constexpr变量?

我有以下代码(使用示例)。它检查变量的基础值是什么,并使用get接收此基础值。如您所见,代码变得非常重复。 #...

回答 2 投票 0

是否可以将变体的索引作为constexpr?

我有以下代码(使用示例)。它检查变量的基础值是什么,并使用get接收此基础值。如您所见,代码变得非常重复。 #...

回答 1 投票 0

为什么要为字符串文字声明将const添加到constexpr?

此声明:char constexpr * const s =“ hello”;失败并出现以下错误:g ++ -g -Wall -Werror -std = c ++ 17 test.cc -o test test.cc:8:31:错误:ISO C ++ 11不允许从字符串转换...] >

回答 1 投票 3

clang -Wglobal-constructors有关复制/移动构造函数的行为

此代码产生警告:“声明需要全局构造函数[-Wglobal-constructors]” //使用-Wglobal-constructors类T {公用:constexpr T(int * p):ptr_(p){} T( const ...

回答 1 投票 0

错误:无法初始化类型为'int * const'的变量,其右值为'const int *

为什么出现此错误:错误:在编译以下代码时,无法使用类型为'const int *的右值来初始化类型为'int * const'的变量?代码:constexpr int ch1 = 5; ...

回答 1 投票 0

是否有可能在编译时强制两个派生类对于某个重写函数始终返回不同的值?

是否有可能在编译时强制接受以下内容:类B {公开:虚拟constexpr const char * getKeyStr()const = 0; }; D1类:公共B {公共:...

回答 1 投票 3

是否有可能在编译时强制两个派生类将始终为重写函数返回不同的值?

是否可以在编译时强制接受以下内容,但...类B {public:virtual constexpr const char * getKeyStr()const = 0; }; D1类:公共B {公共:constexpr ...

回答 1 投票 0

如何访问在结构中定义的constexpr字符串?

如何从结构中正确访问字符串“ bye”? #include static constexpr char hi [] =“ hi”; struct S {static constexpr char bye [] =“ bye”; }; int main(int argc,char * ...

回答 1 投票 0


未在c ++模板参数中使用constexpr

我正在使用类型为itk :: Image 的变量,其中“ itk”来自图像处理库ITK。编译以下代码:constexpr unsigned int ...

回答 1 投票 0

为什么std :: array :: begin()自C ++ 17以来就是constexpr?

从C ++ 17开始,std :: array :: begin()是constexpr:constexpr迭代器begin()noexcept;但是如何在编译时知道开始的返回呢?例如:int main(){auto p = std :: ...

回答 2 投票 2

为什么std :: array :: begin()自C ++ 17起使用constexpr?

从C ++ 17开始,std :: array :: begin()是constexpr:constexpr迭代器begin()noexcept;但是如何在编译时知道开始的返回呢?例如:int main(){auto p = std :: ...

回答 1 投票 0

当对象较大时返回指针或值

类,该类将nxm个整数存储在成员变量std :: array ,n> inner;中。现在,有两种添加方法:方法1)返回...

回答 1 投票 1

C ++ 11 constexpr构造函数如何从指针完全初始化C样式的数组?

在c ++ 11中,我希望具有如下结构:template struct bytes_block {char data [n]; constexpr bytes_block(char const * s):data(....){}};可以放心...

回答 1 投票 0

如何防止std :: is_constructible中的隐式转换

假设,我有几个不同的类:class Constructible_from_float {public:Constructible_from_float(float); };类Constructible_from_double {公共:constructible_from_double(...

回答 1 投票 0

初始化constexpr函数中的变量时的性能损失

根据这个问题,不可能在constexpr函数中保留未初始化的变量。有时出于性能原因,我们不想初始化变量。是否可以...

回答 1 投票 0

为什么`constexpr`是`std :: max()`的C ++ 14模板原型的一部分?

每个cplusplus.com,这里,std :: max()的默认C ++ 11原型是:template const T&max(const T&a,const T&b);在C ++ 14版本中,但是添加了constexpr:...

回答 3 投票 0

将字符串文字转换为函数内部的CRC32 constexpr

我有一个API,它需要尽可能简单。同时,某些函数的字符串是“众所周知的”,并且字符串文字总是如此,因此可以将其转换为CRC32值...

回答 1 投票 1

© www.soinside.com 2019 - 2024. All rights reserved.