fix forward declarations

上级 7d3adb00
......@@ -15,8 +15,8 @@ namespace { // keep the code local to this file by assigning them to an unnamed
// fwd declarations
using Entry = struct Entry;
bool putProber(Entry entry, int key);
bool searchingProber(Entry entry, int key);
bool putProber(const Entry& entry, int key);
bool searchingProber(const Entry& entry, int key);
void add(int key);
// Undocumented globals
......@@ -112,7 +112,7 @@ int doubleHash(int key, bool searching) {
* @returns `true` if key is not present or is a `toumb`
* @returns `false` is already occupied
*/
bool putProber(Entry entry, int key) {
bool putProber(const Entry& entry, int key) {
if (entry.key == notPresent || entry.key == tomb) {
return true;
}
......@@ -125,7 +125,7 @@ bool putProber(Entry entry, int key) {
* @returns `true` if found
* @returns `false` if not found
*/
bool searchingProber(Entry entry, int key) {
bool searchingProber(const Entry& entry, int key) {
if (entry.key == key) {
return true;
}
......
......@@ -18,15 +18,10 @@ using std::string;
namespace { // keep the code local to this file by assigning them to an unnamed
// namespace
/** Node object that holds key */
struct Entry {
explicit Entry(int key = notPresent) : key(key) {} ///< constructor
int key; ///< key value
};
// fwd declarations
bool putProber(Entry entry, int key);
bool searchingProber(Entry entry, int key);
using Entry = struct Entry;
bool putProber(const Entry& entry, int key);
bool searchingProber(const Entry& entry, int key);
void add(int key);
// Undocumented globals
......@@ -37,6 +32,12 @@ int tomb = -1;
int size;
bool rehashing;
/** Node object that holds key */
struct Entry {
explicit Entry(int key = notPresent) : key(key) {} ///< constructor
int key; ///< key value
};
/**
* @brief Hash a key. Uses the STL library's `std::hash()` function.
*
......
......@@ -18,8 +18,8 @@ namespace { // keep the code local to this file by assigning them to an unnamed
// fwd declarations
using Entry = struct Entry;
bool putProber(Entry entry, int key);
bool searchingProber(Entry entry, int key);
bool putProber(const Entry& entry, int key);
bool searchingProber(const Entry& entry, int key);
void add(int key);
// globals
......@@ -87,7 +87,7 @@ int quadraticProbe(int key, bool searching) {
}
// Finds empty spot
bool putProber(Entry entry, int key) {
bool putProber(const Entry& entry, int key) {
if (entry.key == notPresent || entry.key == tomb) {
return true;
}
......@@ -95,7 +95,7 @@ bool putProber(Entry entry, int key) {
}
// Looks for a matching key
bool searchingProber(Entry entry, int key) {
bool searchingProber(const Entry& entry, int key) {
if (entry.key == key) {
return true;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册