954,500 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

compile error-chained hash table c++

i'm trying to create a chained hash table using a linked list header file, but there's a problem with my insert function. here's the relevant portion. the error comes in the part that is in red. compiler says "parse error before '.' "
i've used the linked list header before, so i know it works. also, if i take the line in question & replace LinkedList.add(value) with 25 (for example) it works fine - of course, it just inserts it in the hash table array. i think i'm using the LinkedList.add() function incorrectly. can anyone help?

#include "linkedlist.h"
int main()
{
                HashTable Hash7(7);
                LinkedList MyList;
               
                Hash7.Insert(8);
                   
  system("PAUSE");
  return 0;
}[/SIZE]



[SIZE=1]bool HashTable::Insert(const Item &value){

     int Pos = HashFunction(value);

//LinkedList.add(3);  gave same error
//MyList.add(value);  gave error "MyList undeclared"

      MyTable[Pos].status = Occupied;
      MyTable[Pos].value = LinkedList.add(value); 
      cout<<"value in pos "<<Pos<<" is "<< MyTable[Pos].value<<endl;

}
andremc
Newbie Poster
3 posts since Aug 2004
Reputation Points: 10
Solved Threads: 0
 

LinkedList is a class, not a variable. It's sort of like saying

int = 4;

LinkedList MyList;
MyList.add( value ); // this would work
LinkedList.add(value); // this wont

Also, you have a comments saying MyList.add(value) doesn't work in the Insert() function. That's because MyList is declared in the main function. The basic rule is that any variable inside brackets ( {} ) is only visible inside those brackets. So move MyList outside main() if you want to access it elsewhere, or pass it in as a parameter.

Chainsaw
Posting Pro in Training
436 posts since Jun 2004
Reputation Points: 36
Solved Threads: 11
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You