gpt4 book ai didi

c++ - 实现哈希表,insert函数导致 "scope"错误

转载 作者:行者123 更新时间:2023-11-28 03:43:57 27 4
gpt4 key购买 nike

在我提出这个问题之前,我可能应该做更多的研究,但我对在线搜索感到非常沮丧。

我正在做一项学校作业,它涉及实现一个哈希表,所以我尝试用这样的链接来初始化桶

在 Hashtable.h 中

private:

Node **buckets; //trying to create an array of pointers

在 Hashtable.cpp 中

Hashtable::Hashtable()
{
buckets=new Node*[1000];
}

void insert(char * value,int r, string previous)
{
int find=hashfcn(value);
Node *x =buckets[find];
}

我现在正在使用代码块,我得到的错误是插入行

error: 'buckets' was not declared in this scope|

我不知道为什么不行,谁能帮帮我,谢谢!

最佳答案

您忘记了 Hashtable::。应该是:

void Hashtable::insert(char * value,int r, string previous)
{
int find=hashfcn(value);
Node *x =buckets[find];
}

我相信您已经知道这一点,但就目前而言,您只是在定义一个自由函数,它不知道什么是 buckets。你需要指定你定义的是一个Hashtable的成员函数,在函数名前加上Hashtable::,然后它可以通过buckets看到> 你的意思是调用 Hashtable 的成员变量名为 buckets

关于c++ - 实现哈希表,insert函数导致 "scope"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8277502/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com