【发布时间】:2014-05-28 14:19:03
【问题描述】:
我必须创建一个模板函数来搜索地图变量中的元素。如果元素存在,函数必须返回它。否则它必须返回 NULL。
template <class K, class E> E dictionary<K,E>::research(K key) {
// map<K,E> elements;
if(elements.find(key) != elements.end()) {
return elements.find(key)->second;
} else {
return NULL;
}
由于返回类型是 E,返回 NULL 总是给我一个错误。我怎样才能使这项工作?或者我必须以不同的方式构建我的功能?
这是学校的家庭作业,我必须返回 NULL,别无选择。如果可以的话,我个人会做不同的事情。
【问题讨论】:
-
如果
NULL与元素的类型不兼容,那么它就不可能工作。 -
问题是什么?
-
返回指向 E 的指针:
template <class K, class E> *E dictionary<K,E>::research(K key){ -
@mah,我猜这个任务需要一个指针。
-
@BrianCain 我编辑了我的问题,抱歉我不是很清楚。