- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我目前正在为一个类项目工作,其中我必须在 C++ 中实现布谷鸟哈希。问题是,C++ 和我从来都不是 friend ,而且我认为我们永远不会...
具体的问题是,我无法在已经存在的对象上设置指针。当我这样做时,我得到了编译错误:
没有从 'const std::__1::basic_string 到 'std::__1::basic_string' 的可行转换*
两条语句都出现错误:
E * activeE = e;
E * tempE = v1[pos];
v1 是一个 E 对象数组。
我认为这个错误是由于我对C++基本概念的普遍误解造成的。我认为对你们来说这个问题是个笑话,但无论如何我希望你们能帮助我。
template <typename E, size_t N>
void Hashing<E,N>::add_(const E& e) {
size_t pos = h1(e);
size_t i = 0;
E * activeE = e;
E * tempE = v1[pos];
while (i < nmax) {
if (tempE == NULL) {
v1[pos] = activeE;
break;
}
v1[pos] = activeE;
activeE = tempE;
pos = h2(activeE);
tempE = v2[pos];
if (tempE == NULL) {
v2[pos] = activeE;
break;
}
v2[pos] = activeE;
activeE = tempE;
pos = h1(activeE);
tempE = v1[pos];
}
}
最佳答案
你有 const E& e
在Hashing<E,N>::add_
方法,但在其中分配 e
指向 E
的指针- 实际上这会产生不同的错误:
'const std::__1::basic_string to 'std::__1::basic_string*"
^
所以修复,因为这是改变:
E * activeE = e;
E * tempE = v1[pos];
到
const E * activeE = &e;
const E * tempE = &v1[pos];
关于c++ - 没有来自 'const std::__1::basic_string<char> to ' std::__1::basic_string<char> *' 的可行转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37271245/
我正在使用 Gunicorn 为 Django 应用程序提供服务,它工作正常,直到我将其超时时间从 30 秒更改为 900000 秒,我不得不这样做,因为我有一个用例需要上传和处理一个巨大的文件(过程
我有一个带有非常基本的管道的Jenkinsfile,它可以旋转docker容器: pipeline { agent { dockerfile { args '-u root' } } stag
在学习 MEAN 堆栈的过程中,我遇到了一个问题。每当我尝试使用 Passport 验证方法时,它都不会返回任何响应。我总是收到“localhost没有发送任何数据。ERR_EMPTY_RESPONS
在当今的大多数企业堆栈中,数据库是我们存储所有秘密的地方。它是安全屋,是待命室,也是用于存储可能非常私密或极具价值的物品的集散地。对于依赖它的数据库管理员、程序员和DevOps团队来说,保护它免受所
是否可以创建像图片上那样的边框?只需使用 css 边框属性。最终结果将是没 Angular 盒子。我不想添加额外的 html 元素。我只想为每个 li 元素添加 css 边框信息。 假设这是一个 ul
我是一名优秀的程序员,十分优秀!