gpt4 book ai didi

c++ - 函数不应在 block 范围内声明

转载 作者:太空狗 更新时间:2023-10-29 21:18:52 24 4
gpt4 key购买 nike

我无法理解以下 misra 规则,“函数不得在 block 范围内声明”。文档中给出的解释是“在 block 范围内声明的函数将引用封闭命名空间的成员,因此声明应明确放置在命名空间级别。”他们的意思是指封闭命名空间的成员?有人可以澄清一下吗?

最佳答案

这意味着当你有了这个时,foo 将在 bar 之外的命名空间中有它的定义:

namespace {
void bar() {
void foo();
}

//could define foo here
}

它的意思是将声明移到与定义相同的级别:

namespace {
void foo();

void bar() {}

//could define foo here
}

关于c++ - 函数不应在 block 范围内声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29015009/

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