gpt4 book ai didi

c++ - 对构造一个具有相同名称的类感到困惑

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

我正在审查一些 C++ 代码并遇到一个我不明白的问题。我有多个 cpp 文件,一个 main.cpp 有:

#include <iostream>
#include "classtest.h"
#include "test2.h"

using namespace std;

int main() {
foo test;
test.b=5;
...

查看包含,test2.h 是空的,test2.cpp 只包含这个:

struct foo{
int a;
};

包含的另一个 header ,classtest.h 包含:

using namespace std;

class foo{
public:
int a;
int b;
};

如您所见,有一个同名的类和结构。我的问题是:为什么在我的 main 方法中键入 foo 是结构而不是类?头文件test2.h中没有定义,main怎么访问呢?第二个问题:给定 foo 是结构(我正在使用 eclipse 并看到它在其上定位鼠标光标),如何访问字段 b,这不是结构存在?抱歉,我是 C++ 的新手,我需要澄清这个疑问。谢谢。

最佳答案

除了#include <iostream> , 如果你替换 #include s 手动,你最终得到这个 main.cpp :

#include <iostream>
using namespace std;
class foo{
public:
int a;
int b;
};
using namespace std;
int main() {
foo test;
test.b=5;

因此很明显 fooclass .这里根本没有任何可疑的事情发生。

关于c++ - 对构造一个具有相同名称的类感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38460846/

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