enum / übergabe eines aufzaehlungstypen...



  • Hi leute,

    ich hab da ein problem im umgang mit enums....

    ich habe in Attribute ein enum namens ParameterType.
    Attribute braucht im constructor genau so ein enum als parameter:

    class Attribute
    {
    private:
    	char * name;
    	enum ParameterType type;
    	ClassGenerator * myClass;
    
    	const char * getTypeName();
    
    public:
    	enum ParameterType{
    		VARCHAR,CHAR,INT,DOUBLE
    	};
    	Attribute(ClassGenerator * myClass, const char * name, Attribute::ParameterType type ); // solte doch eigentlich gehen????
    	virtual ~Attribute(void);
    	const char * getName(void);
    
    };
    
    Attribute::Attribute(ClassGenerator * myClass, const char * name, Attribute::ParameterType type)
    : name(NULL), myClass(myClass)
    {
    	this->type = type;
    	this->name = new char[strlen(name)+1];
    	strcpy(this->name,name);
    }
    

    wenn ich es versuche zu compilieren kommt immer folgende fehlermeldung:
    error C2440: '=' : cannot convert from 'Attribute::ParameterType' to 'ParameterType'

    das es ParameterType schon irgendwie gaebe kann nich sein ich hab auch andere schreibweisen mit "_" etc. schon probiert. ich verstehe nicht wie es hier überhaupt zu einem cast problem kommen kann.

    bin um hilfe sehr dankbar 🙂



  • die reihenfolge muss anders

    class ...
    {
    public:
        enum ParameterType { ... };
    
    private:
        ParameterType typel
    };
    


  • Dieser Thread wurde von Moderator/in Shade Of Mine aus dem Forum ANSI C in das Forum C++ verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Oh man DANKE,
    die Reihenfolge kann man noch aendern.... Danke


Anmelden zum Antworten