gpt4 book ai didi

c++ - cppcheck 警告, "hides typedef with same name"

转载 作者:行者123 更新时间:2023-11-30 01:31:15 24 4
gpt4 key购买 nike

这是一个 cppcheck警告信息。
变量“BUFFER_INFO”隐藏同名的 typedef

BUFFER_INFO 定义如下。

typedef struct tagBufferInfo
{
CRITICAL_SECTION cs;
Buffer* pBuffer1;
Buffer* pBuffer2;
Buffer* pLoggingBuffer;
Buffer* pSendingBuffer;
}BUFFER_INFO, *PBUFFER_INFO;

然后我写道,

PBUFFER_INFO p = new BUFFER_INFO; // causes the warning.

问题是什么?我该如何解决?
谢谢。

最佳答案

这看起来可能是一个 cppcheck 错误。

但是......你写的是糟糕的C++风格,更喜欢:

struct BUFFER_INFO
{
CRITICAL_SECTION cs;
Buffer* pBuffer1;
Buffer* pBuffer2;
Buffer* pLoggingBuffer;
Buffer* pSendingBuffer;
};

我还注意到,将所有大写字母用于类型名称(这些通常为常量保留)并不是好的 C++ 风格,并且隐藏某些东西是指针这一事实的类型定义通常不是一个好主意。

关于c++ - cppcheck 警告, "hides typedef with same name",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3350573/

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