|There are multiple errors in your program.|
1. You don't specify a return type for "main()".
2. You include the keyword "public" in front of the definitions of your class methods - it is only used in their declaration.
3. Most seriously, you don't seem to understand the "*" operator. This means that you are, for example, trying to compare a "node" to NULL. As you haven't defined a comparison operator for nodes this fails. When a variable "temp" is a pointer to a node (struct node *temp), temp is a pointer (and so can be compared to NULL) whereas *temp is a struct node (and so cannot be compared to NULL).
The first two errors are trivial syntax errors. The third error is serious; you need to review your understanding of pointers.