C++枚举值初始化

发布于 2024-08-10 21:20:30 字数 375 浏览 4 评论 0原文

我在代码中声明了一个枚举:

enum REMOTE_CONN
{
    REMOTE_CONN_DEFAULT = 0,
    REMOTE_CONN_EX_MAN = 10000,
    REMOTE_CONN_SD_ANNOUNCE,
    REMOTE_CONN_SD_IO,
    REMOTE_CONN_AL,
    REMOTE_CONN_DS
};

我期望 REMOTE_CONN_SD_IO 的值是 10002,但是在调试时 ((int)REMOTE_CONN_SD_IO) 的值给出为 3。

另一个组件使用相同的枚举,它给出的预期值是10002 到 REMOTE_CONN_SD_IO。

这可能是什么原因?

I have an enum declared in my code as:

enum REMOTE_CONN
{
    REMOTE_CONN_DEFAULT = 0,
    REMOTE_CONN_EX_MAN = 10000,
    REMOTE_CONN_SD_ANNOUNCE,
    REMOTE_CONN_SD_IO,
    REMOTE_CONN_AL,
    REMOTE_CONN_DS
};

I expect the value of REMOTE_CONN_SD_IO to be 10002, but when debugging the value of ((int)REMOTE_CONN_SD_IO) was given as 3.

Another component uses the same enum and it gives the expected value of 10002 to REMOTE_CONN_SD_IO.

What could be the reason for this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

注定孤独终老 2024-08-17 21:20:30

好吧,我猜一下。

第一个组件是在您更改标头中的代码之前构建的。尝试重建有问题的组件。

OK, I'll guess.

The first component was built before you changed the code in the header. Try rebuilding the offending component.

凉薄对峙 2024-08-17 21:20:30

一种可能的答案是,在设置 REMOTE_CONN_EN_MA = 10000 后,您的可执行文件未正确重建,因此您的调试内容与您正在查看的内容不匹配。

One possible answer is that your executable wasn't rebuilt properly after you set REMOTE_CONN_EN_MA = 10000 so what your debugging doesn't match what you're looking at.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文