C++ 类类型名称的重新声明
考虑以下示例:C++ 类类型名称的重新声明,c++,class,declaration,C++,Class,Declaration,考虑以下示例: void foo() { class A; class A; } int main() { foo(); return 0; } 这是很好的工作。为什么允许对类类型进行这种重新定义?我很困惑 请给我一个C++规范的引用,这样的重新声明是允许的…如果可能的话。§3.1 声明(第7条)可将一个或多个名称引入翻译单元,或重新声明先前声明引入的名称。 那是第一条 第二条规定了什么是声明。我没有在这里复制它,因为它包含了很多示例。§3.1 声明(第7条)
void foo()
{
class A;
class A;
}
int main()
{
foo();
return 0;
}
这是很好的工作。为什么允许对类类型进行这种重新定义?我很困惑
请给我一个C++规范的引用,这样的重新声明是允许的…如果可能的话。§3.1
声明(第7条)可将一个或多个名称引入翻译单元,或重新声明先前声明引入的名称。
那是第一条
第二条规定了什么是声明。我没有在这里复制它,因为它包含了很多示例。§3.1
声明(第7条)可将一个或多个名称引入翻译单元,或重新声明先前声明引入的名称。
那是第一条
第二条规定了什么是声明。我没有在这里复制它,因为它包含了很多示例。§3.1
声明(第7条)可将一个或多个名称引入翻译单元,或重新声明先前声明引入的名称。
那是第一条
第二条规定了什么是声明。我没有在这里复制它,因为它包含了很多示例。§3.1
声明(第7条)可将一个或多个名称引入翻译单元,或重新声明先前声明引入的名称。
那是第一条
第二条规定了什么是声明。我没有把它复制到这里,因为它包含了很多例子。
声明和定义是两个不同的概念。您可以在翻译单元中声明任意次数的名称。但定义应该只出现一次。检查和声明和定义是两个不同的概念。您可以在翻译单元中声明任意次数的名称。但定义应该只出现一次。检查和声明和定义是两个不同的概念。您可以在翻译单元中声明任意次数的名称。但定义应该只出现一次。检查和声明和定义是两个不同的概念。您可以在翻译单元中声明任意次数的名称。但定义应该只出现一次。检查并此外,如果每个类别A在不同的cpp文件中声明为全局变量
如果使用“-warn common”调用g++,链接器将发出警告。此外,如果每个类a在不同的cpp文件中声明为全局变量,则链接器将发出警告
如果使用“-warn common”调用g++,链接器将发出警告。此外,如果每个类a在不同的cpp文件中声明为全局变量,则链接器将发出警告
如果使用“-warn common”调用g++,链接器将发出警告。此外,如果每个类a在不同的cpp文件中声明为全局变量,则链接器将发出警告
如果您使用“-warn common”调用g++,链接器将发出警告。谢谢!这正是我想知道的。谢谢!这正是我想知道的。谢谢!这正是我想知道的。谢谢!这正是我想知道的。