gpt4 book ai didi

c++ - 头文件中的外部枚举

转载 作者:行者123 更新时间:2023-12-04 03:30:20 25 4
gpt4 key购买 nike

在我的项目中,我有一个包含以下行的头文件。

extern enum class options {alpha, beta, gamma, theta};
extern options P1, P2;

编译给我

error: a storage class can only be specified for objects andfunctions

为什么?
我该如何纠正这个问题?

编译器:GCC 9.2.0

最佳答案

extern 应用于变量以指定它们具有外部链接。您拥有的不是变量而是 enum 定义,因此 extern 不能应用于它。

您可以将 extern 应用于 enum 类型的文件范围内的变量。

例如,您的头文件将包含:

enum options {alpha, beta, gamma, theta};

extern options myoption;

一个源文件中,您将拥有:

options myoption;

关于c++ - 头文件中的外部枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67007497/

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