小编Kyl*_*yle的帖子

如何知道类枚举的基础类型?

我有一个变量声明为:

enum class FooEnum: uint64_t {}
Run Code Online (Sandbox Code Playgroud)

我想转换为它的基类型,但我不想硬编码基类型.例如,像这样:

FooEnum myEnum;
uint64_t * intPointer = (underlying_typeof(myEnum))&myEnum;
Run Code Online (Sandbox Code Playgroud)

这可能吗?

c++ c++11

29
推荐指数
3
解决办法
9377
查看次数

为什么unique_ptr有一个nullptr_t构造函数?

我不清楚它的好处是什么.

如果我有:

Foo* foo = nullptr;
std::unique_ptr<Foo> unique_foo(foo);
Run Code Online (Sandbox Code Playgroud)

在那种情况下是否调用了nullptr_t构造函数?或者只有你这样做:

std::unique_ptr<Foo> unique_foo(nullptr);
Run Code Online (Sandbox Code Playgroud)

谢谢!

有一些讨论,这里是让你来传递nullptr_t,否则将无法编译,因为它不会转换为指针类型.所以我的问题可能是为什么它不投?

c++ unique-ptr c++11

7
推荐指数
1
解决办法
1426
查看次数

标签 统计

c++ ×2

c++11 ×2

unique-ptr ×1