【发布时间】:2011-11-11 15:08:24
【问题描述】:
以下 java 方法将哈希表的键作为枚举返回。
Hashtable<String, Object> props = new Hastable<String, Object>();
// some code here
public final Enumeration getPropertyURIs() {
return props.keys();
}
我想将此代码翻译成 C++。
更具体地说,如何在 C++ 中实现相同的函数,该函数返回 std::map 的键枚举?
【问题讨论】:
-
我不懂 java,但我怀疑 C++ 中的枚举与 Java 中的枚举甚至不接近。 C++ 中的
enums 只是列出一些常量的一种便捷方式,为每个常量赋予一个唯一值。 -
“密钥枚举”是什么意思?在 C++ 中,map 的 key 有一个固定的类型,你只能说那个类型。 (键类型可能当然是枚举。)
-
可能与this重复
-
@fmass:那里的解决方案适用,但问题不同。
-
我不知道为什么要讨论 C++
enum!= JavaEnumeration。 Javaenum与 C++enum完全相同,但Enumeration完全不同,只是在其名称中偶然包含 3 个相同的字母。在 C++ 中,与Enumeration最接近的是迭代器。
标签: c++ map hashtable enumeration