User forums > General (but related to Code::Blocks)

Can't create a function which returns void. Please help

(1/1)

HealingAura:
Can someone please help me?
I have an error with this code:


--- Code: ---class Symbols
{
private:
char code[27]; // The encoding of each letter
Letter **c; // The Letters from a-z
Key2Letter **key; // The keys for the letters
char stop; // When to stop reading from input
int number;
public:
Symbols();
void Remove(int num);
void Switch(int num1,int num2);
void SortNewList();
friend istream &operator>>(istream &in,Symbols &s);
friend ostream &operator<<(ostream &out,Symbols &s);
void InsertList (Key2List* k);
};

--- End code ---

The error is:


--- Code: ---main.cpp:164: error: variable or field `InsertList' declared void // In the line of InsertList
  main.cpp:164: error: expected `;' before '(' token // In the line of InsertList
main.cpp:180: error: expected `;' before "void // In the line of the end of the class"

--- End code ---


I searched but there was no mistake. I searched this on the web but couldn't find an answer.
Someone can help me please and tell me what's wrong?

BigAngryDog:
Your line:

void InsertList (Key2List* k);

has an erroneous space between "InsertList" and "(...".

:)

thomas:

--- Quote from: BigAngryDog on June 29, 2006, 01:07:28 pm ---void InsertList (Key2List* k);
has an erroneous space between "InsertList" and "(...".
--- End quote ---
No, that doesn't matter. It is not pretty, but it is not wrong either.


The error is not in the piece of code you posted, it compiles fine (with include and forward decl added):

--- Code: ---#include <ios>
using namespace std;

class Letter;
class Key2Letter;
class Key2List;

class Symbols
{
private:
char code[27]; // The encoding of each letter
Letter **c; // The Letters from a-z
Key2Letter **key; // The keys for the letters
char stop; // When to stop reading from input
int number;
public:
Symbols();
void Remove(int num);
void Switch(int num1,int num2);
void SortNewList();
friend istream &operator>>(istream &in,Symbols &s);
friend ostream &operator<<(ostream &out,Symbols &s);
void InsertList (Key2List* k);
};

int main()
{
    return 0;
}
--- End code ---


--- Code: ----------------- Build: default in console ---------------
mingw32-g++.exe  -IC:\mingw\include  -c main.cpp -o .objs\main.o
mingw32-g++.exe -LC:\mingw\lib  -o console.exe .objs\main.o   
Process terminated with status 0 (0 minutes, 0 seconds)
0 errors, 0 warnings
--- End code ---
It must be somewhere else. Forgotten ";" in some earlier place maybe?

HeroreV:
The compiler is not recognizing a type named "Key2List". Probably you forgot to include the header defining the Key2List type or it's actually named something else.

Navigation

[0] Message Index

Go to full version