why my code get this error error

Any one can help me? why my code get this error error: expected class-name before ‘(‘ token error: expected ‘{‘ before ”’ token error: expected unqualified-id before ‘)’ token === Build failed: 3 error(s), O warning(s) (0 minute(s), 0 second(s)) === This my code: class Board:public State(){ private: vectorblocks; public: void generateIntlState() { int bIndex = 0; intializeBlocks(); for(int r = 0; r for(int c = 0; c setVal(r,c blocks[bIndex]); bIndex ++; } } pushBlockDown(); } void intializeBlocks(){ int zeroCount = 1; for (int i = 1; i blocks.push_back(i); if(zeroCount<> blocks.push_back(0); } zeroCount++; } for( int i = 8; i > 0; i–){ int num=rand()% i; int temp = blocks[i]; blocks[i] = blocks[num]; blocks[num] = temp; } } void findActHeuristic(priority_queue&actions, Goal g){ Action a; vectoractions_vec; vector states; int h = 0; for(int r = 0; r for(int c = 0; c if((r != c)&&(isFull(r))&&(isEmptu(c))){ a.setAction(r,c); actions_vec.push_back(a); } } } for(int i = 0; i State newState = nextState(actions_vec[i]); states.push_back(newState); if(newState.getVal(g.getRow(),g.getColumn()) == g.getVal()){ h = 100; }else if(newState.isOnTop(g.getVal())&&(newState.isColumnEmpty(g.getColumn()))){ h = 95; }else if(newState.isOnTop(g.getVal())&&(newState.isBlockEmpty(g.getColumn()))){ h = 85; }else if(newState.isBlockEmpty(g.getRow(),g.getColumn())){ h = 65; }else if(newState.isColumnEmpty(g.getColumn()))&&(getRowPos(g.getVal()) > g.getRow()){ h = 55; }else if(newState.isColumnEmpty(g.getColumn())){ h = 50; }else if(newState.isOnTop(ggetVal())){ h = 40; }else if(newState.isColumnFull(g.getColumn())){ h = 1; }else{ h = 5; } actions_vec[i].setHeuristic(h); actions.push(actions_vec[i]); } templatevoid priority_queueQ(priority_queueq){ while(!q.empty()){ q.top().printGoal(); q.pop(); } cout <> } } };

The Correct Answer and Explanation is :

The errors you’re encountering in your C++ code are related to syntax issues, particularly with class declarations and member function definitions. Let’s address each error and provide solutions:

1. Error: expected class-name before ‘(‘ token

This error typically occurs when the compiler expects a class name but encounters something else. In your code, the declaration:

class Board:public State(){

is incorrect. The parentheses after State are unnecessary and syntactically incorrect. The correct syntax for inheritance in C++ is:

class Board : public State {

Ensure that State is a valid class that has been properly declared and included in your project.

2. Error: expected ‘{‘ before ”’ token

This error suggests that the compiler encountered an unexpected character, likely due to a missing or misplaced symbol. In your code, the function definition:

void intializeBlocks(){

has a syntax error. The correct function declaration should be:

void initializeBlocks() {

Additionally, ensure that all function definitions are properly enclosed within curly braces {}.

3. Error: expected unqualified-id before ‘)’ token

This error often arises from incorrect function declarations or missing headers. In your code, the function:

void findActHeuristic(priority_queue&actions, Goal g){

is missing a space between & and actions. The corrected declaration is:

void findActHeuristic(priority_queue& actions, Goal g) {

Ensure that priority_queue and Goal are properly declared and included in your project.

General Recommendations:

  • Include Directives: Verify that all necessary header files are included at the beginning of your source files. For example, if you’re using vector, include:
  #include <vector>
  • Function Definitions: Ensure that all member functions are defined with the correct syntax, including proper use of curly braces {}.
  • Spelling and Case Sensitivity: C++ is case-sensitive. Ensure that all identifiers are spelled correctly and consistently. For instance, intializeBlocks should be initializeBlocks.
  • Class Declarations: When inheriting from a base class, ensure that the base class is properly declared and included. For example:
  #include "State.h" // Ensure this header file exists and is correctly included

By addressing these syntax issues and ensuring proper declarations and inclusions, your code should compile without the mentioned errors.

Scroll to Top