gpt4 book ai didi

c++ - 将 NULL 传递给枚举类型输入参数 - C++

转载 作者:行者123 更新时间:2023-11-28 05:22:25 25 4
gpt4 key购买 nike

在我的代码中,我有两个如下所示的枚举:

enum myEnum{e1, e2};
enum myEnum2{e3, e4};

我有一个如下所示的函数原型(prototype):

void function myFunc(myEnum in_enum1, myEnum in_enum2){

some-code-here;

}

在某些情况下,我必须将第二个输入参数 in_enum2 留空。

我尝试将 NULL 传递给它,但是编译器在这样做时给出了参数初始化错误。

如何将 NULL 传递给枚举类型的输入参数?

提前致谢。

最佳答案

枚举底层类型通常是int,它们不是指针,所以它们不能为null。

您可以使用指向您的枚举的指针,或向您的枚举添加一个 NULL 选项。这是后者:

enum myEnum{NULL, e1, e2};
enum myEnum2{NULL, e3, e4};

然后用枚举的 NULL 文字调用它。

myFunc(myEnum::NULL, myEnum2::NULL);

关于c++ - 将 NULL 传递给枚举类型输入参数 - C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41198049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com