初始化为C++的结构是什么
What are structs initialized as C++
我有一个看起来像这样的结构...
struct Node {
std::string key, value;
Node* link;
};
如果我这样初始化了一个节点数组......
Node* linkedlist = new Node[100]
我将如何迭代以计算当前存在多少个结构?我目前正在实施一个哈希图,我需要计算有多少个活动存储桶。
初始化为C++的结构是什么
当您使用
Node* linkedlist = new Node[100];
数组的所有元素都是默认初始化的。 key
和 value
默认初始化,方法是调用 std::string
的默认构造函数。 link
默认初始化,即未初始化。
我将如何迭代以计算当前存在多少个结构?
你不能在给定指针的情况下这样做。这就是为什么std::vector
优先于动态分配的原始数组的原因。您可以通过std::vector
获得更多功能。
而不是
Node* linkedlist = new Node[100];
用
std::vector<Node> linkedlist(100);
更新,以回应OP的评论
当您不被允许使用 std::vector
时,您必须自己跟踪数组中的项目数。
int numItems = 100; // It could be obtained from the user input also.
Node* linkedlist = new Node[numItems];
现在,您可以依靠 numItems
的值来迭代其余代码中的 Node
数组。
相关文章:
- 这里的以下 OOP 结构是什么?
- 用于筛子的最佳数据结构是什么(即一些被划掉的数字列表)?
- 对于可重定位的多平台安装,理想的 cmake 安装目录结构是什么?
- 表示图像矩阵的理想数据结构是什么?
- 将在 C++ 中输出多维数组内容的 for 循环的结构是什么
- 存储大量会话的最有效数据结构是什么?
- STD :: MAP的基础结构是什么
- 这个结构是什么:"void dot::print(void){"?
- 给定 C# 代码的正确数据结构是什么
- 可用于存储和管理整数集合的最佳C++数据结构是什么
- 存储将经常更新的大数组的正确结构是什么
- 使用 Qt 的简单线程 gui 应用程序的结构是什么?
- 通常用于将输入映射到显示器的数据结构是什么
- A*开放集的最佳数据结构是什么
- C++中的地图数据结构是什么
- 我的火狐扩展程序不起作用。使用C++XPCOM组件的Firefox扩展(XPI文件)的结构是什么?
- 可以处理随机访问和键搜索的数据结构是什么?
- C++ STL 堆栈中使用的基本数据结构是什么?
- (EDIT:MFC)CString类的对象的内部结构是什么
- 初始化为C++的结构是什么