4 Stimmen

Fehler C2448: Die funktionsähnliche Initialisierung scheint eine Funktionsdefinition zu sein

Ich habe folgenden Code -

void CommandProcessor::ReplacePortTag((void *) portID)
{
    std::string temp = std::string.empty();
    int start = 0;
    for (int i=0; i")
        {
            temp += CommandProcessor::fileContents.substr(start,i-start);
            temp += portID;
            start = i+6;
        }
    }
    temp += CommandProcessor::fileContents.substr(start+6,CommandProcessor::fileContents.length()-start-6);
    CommandProcessor::fileContents = temp;
}

Beim Versuch zu kompilieren erhalte ich den Fehler -

error C2448: 'CommandProcessor::ReplacePortTag' : function-style initializer appears to be a function definition

Ich kann nicht herausfinden, wo mein Fehler liegt. Was muss ich ändern, um diesen Fehler zu beheben?

5voto

Cory Kramer Punkte 114981

Dies bedeutet, dass Sie die Variable portID durch C-Style-Casting in einen void* umwandeln.

void CommandProcessor::ReplacePortTag((void *) portID)

Wenn das Argument ein void* sein soll, sollte Ihre Funktionsdeklaration wie folgt aussehen:

void CommandProcessor::ReplacePortTag(void* portID)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X