Solved

Error 2629: unexpected 'class ClassA ('

Posted on 2003-11-13
6
493 Views
Last Modified: 2011-09-20
Hi there,

Sorry if I explain this badly, I'm not quite sure what is relevant.

I'm getting the error above when I try to compile my project.  The line in question is in ClassA.h and looks something like:

ClassA(ClassB* theParent, type theType);

where type is a typedef inside classA and ClassB is #included above the constructor.

There's another error on the same line:
Error C2238: unexpected token(s) preceding ';'

The error seems to come up while compiling a third class which does not refer to ClassB or ClassA or refer to anything that does.

The problem arose when I moved the typedef from another unrelated class and put it in ClassA.  This typedef is used as a parameter and return type for several functions both inside and outside ClassA (but not in ClassB or either of the other two classes I mentioned)

What's going on?  I'm very confused.

Thank you.
0
Comment
Question by:wilsonian
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
6 Comments
 
LVL 4

Expert Comment

by:n_fortynine
ID: 9745662
Could you post your "related" code?
0
 

Author Comment

by:wilsonian
ID: 9751678
What do you want, ClassA.h?
0
 
LVL 4

Expert Comment

by:n_fortynine
ID: 9751837
if that's where the error is...
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:wilsonian
ID: 9759780
// LengthBar.h: interface for the LengthBar class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_LENGTHBAR_H__F59F85DC_D3DA_4185_A61F_13185405C7D6__INCLUDED_)
#define AFX_LENGTHBAR_H__F59F85DC_D3DA_4185_A61F_13185405C7D6__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "Phoneme.h"
#include "EyeSpeakPage.h"

class LengthBar
{
public:
      

      typedef enum unmatched_type {
            VOWEL_LENGTH,
            VOICING,
            L_R_NESS,
            P_F_NESS,
            S_SH_NESS,
            SH_CH_NESS,
            H_F_NESS,
            B_V_NESS,
            V_W_NESS,
            J_Y_NESS,
            WB_H_NESS,
            S_TH_NESS,
            F_TH_NESS,
            T_TH_NESS,
            D_THV_NESS,
            Z_THV_NESS,
            M_N_NESS,
            N_NG_NESS,
            NGK_NG_NESS,
            N_L_NESS
      } unmatched_type;

      LengthBar(EyeSpeakPage* theParent, unmatched_type thePurpose); //ln 44*****

      void drawArrow(CDC* dc, int length, int tooLong);
      unmatched_type getPurpose();
      void setRightEnd(CString end);
      CString getRightEnd();
      void setLeftEnd(CString end);
      CString getLeftEnd();
      int TooLong(int length);
      int ShowLength(CDC *dc, Phoneme* contrast, CString speaker, bool isUser, int placeInPair);
      void Draw(CDC* dc, Phoneme::length length); //isLong == unvoiced

      virtual ~LengthBar();
      
private:
      unmatched_type purpose;
      CString rightEnd;
      CString leftEnd;
      double getRatioX();
      double getRatioY();
      EyeSpeakPage* parent; //ln 64*************************************
      Phoneme::length barLength;
      int LEFT_EDGE;

};

#endif // !defined(AFX_LENGTHBAR_H__F59F85DC_D3DA_4185_A61F_13185405C7D6__INCLUDED_)

I get the following errors when compiling Phoneme.cpp, as well as about a dozen other files not mentioned here:

c:\vpsl\product\c++\eyespeak\gui\lengthbar.h(44) : error C2629: unexpected 'class LengthBar ('
c:\vpsl\product\c++\eyespeak\gui\lengthbar.h(44) : error C2238: unexpected token(s) preceding ';'
c:\vpsl\product\c++\eyespeak\gui\lengthbar.h(64) : error C2143: syntax error : missing ';' before '*'
c:\vpsl\product\c++\eyespeak\gui\lengthbar.h(64) : error C2501: 'EyeSpeakPage' : missing storage-class or type specifiers
c:\vpsl\product\c++\eyespeak\gui\lengthbar.h(64) : error C2501: 'parent' : missing storage-class or type specifiers

0
 
LVL 4

Accepted Solution

by:
n_fortynine earned 60 total points
ID: 9759812
Did you miss a semi-colon at the end when declaring class EyeSpeakPage? Because it's saying it does not recognize EyeSpeakPage as a type?
0
 

Author Comment

by:wilsonian
ID: 9759886
Well, I wasn't declaring class EyeSpeakPage at all.  
But doing so seems to have fixed all the errors.  I'd swear I'd tried that on Friday, oh well.

Thank you very much, I think that was close enough to being the answer!
0

Featured Post

[Webinar] Code, Load, and Grow

Managing multiple websites, servers, applications, and security on a daily basis? Join us for a webinar on May 25th to learn how to simplify administration and management of virtual hosts for IT admins, create a secure environment, and deploy code more effectively and frequently.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
How to convert MFC::CString to UTF8 wchar_t* 10 446
VS2015 Redefinition errors 4 101
HTTPSendRequest with WinINet delays on first call 11 117
No module found pypyodbc, 3 53
Templates For Beginners Or How To Encourage The Compiler To Work For You Introduction This tutorial is targeted at the reader who is, perhaps, familiar with the basics of C++ but would prefer a little slower introduction to the more ad…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
The goal of the tutorial is to teach the user how to use functions in C++. The video will cover how to define functions, how to call functions and how to create functions prototypes. Microsoft Visual C++ 2010 Express will be used as a text editor an…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question