c++ - C++中结构的类型重定义?
问题描述
我在学习 C++ 时对 C++ 代码片段感到困惑,有人可以帮我解决这个问题吗?提前致谢。
struct LinkNode
{
int data;
struct LinkNode* next; // Why there use `struct` type define LinkNode again?
};
正如我的评论,为什么struct
再次使用类型定义 LinkNode ?我认为代码struct LinkNode{}
已经定义了一个 LinkNode。当然,如果我如下更改代码,它也可以正常工作,也不会出现任何编译错误。
struct LinkNode
{
int data;
LinkNode* next; // No any compilation errors either.
};
解决方案
C++中结构的类型重定义?
这不是类型重新定义。这称为详细类型说明符。它可以用来区分一个类名和另一个隐藏它的名字。在这种情况下没有必要使用它。使用它也不会破坏任何东西。
也可以为可从 C 中使用的 API 编写代码。在 C 中,这是必要的。
推荐阅读
- c# - C# Directory.Move 但对于已经存在的文件夹 - 如何在不创建全新目录的情况下使用此方法或类似方法?
- c# - c# selenium if else 检查
- python - Azure Python 计费 API
- ios - IOS-Deploy 和 iOS 开发者证书
- c# - 默认 CLR 主机为每个域提供 2 秒的“ProcessExit 事件处理程序”?
- node.js - 如何使用 Mongoose 在 mongoDB 中填充 3 个集合
- pandoc - 列表的 Pandoc 标识符
- android - 使用 Retrofit 从 JSON 获得完整响应
- c# - C# - Word interop 获取 Excel 表(Excel 工作表)
- python-3.x - 使用 py2app 构建的 MacOS 应用程序不会将点图呈现为 pdf 文件