首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++代码气味:不正确的初始化器支座放置

C++代码气味:不正确的初始化器支座放置
EN

Stack Overflow用户
提问于 2021-01-26 02:30:53
回答 1查看 257关注 0票数 0

我正在尝试修复从Klocwork(KW)生成的C++代码中的以下代码气味:

MISRA.INIT.BRACES:不正确的初始化大括号放置位置

下面是我试图清理的代码片段。

代码语言:javascript
复制
    typedef char charString[10];

    enum SomeEnum
    {
        BLAH1_e,
        BLAH2_e,
        BLAH3_e
    };

    struct ParentStruct
    {
        SomeEnum myEnumValue;
        charString myCharStringValue;
    };

    // This is the the part that KW is not happy about
    // KW complaining about initializer bracer placement
    const ParentStruct myParent[3] = 
    {
        {BLAH1_e, "String1"},
        {BLAH2_e, "String2"},
        {BLAH3_e, "String3"}
    }

我尝试了许多不同的护腕放置,似乎无法找出确切的问题,我现在有护腕放置。这不会产生任何编译错误,也不会对代码产生负面影响。也许它只是KW,但只是想在我完全放弃之前得到一些想法。

下面是我尝试过的另一种护腕放置方式,以防有人抛出它作为答案:

代码语言:javascript
复制
    // compiles but KW does not like this as well
    const ParentStruct myParent[3] = 
    {
        {BLAH1_e, {"String1"}},
        {BLAH2_e, {"String2"}},
        {BLAH3_e, {"String3"}}
    }
EN

回答 1

Stack Overflow用户

发布于 2021-11-29 12:54:58

请使用最新版本的Klocwork运行分析,并检查此问题是否已由Klocwork在您的末尾报告。

我使用的是Klocwork 2021.3,而且MISRA.INIT.BRACES检查器似乎没有像预期的那样报告代码中的任何问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65895136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档