missing function header (old-style formal list?)



  • Hi zusammen

    Ich hab ein kleines Problem, bei dem mir die MSDN nicht weiterhelfen konnte.

    Ich hab eine Funktion void WriteRawHeader(..)
    Die Funktion wird vor dem main{} definiert und im main verwendet:

    FUnktionsdefinition:

    void WriteRawHeader(ofstream& oStreamRawLog, int &minDelay, int &maxDelay,string &expBitError,string& logFileComment,string& computerName, string &userName, int &comPort, int &baudRate, const string &version,string &logFileTimeStamp);
    

    Funktion:

    void WriteRawHeader(ofstream& oStreamRawLog, int &minDelay, int &maxDelay,string &expBitError,string& logFileComment,string& computerName, string &userName, int &comPort, int &baudRate, string &version,string &logFileTimeStamp);
    {//Compiler sagt, das Der Fehler hier liegt	
    	//Create Raw Log File Header
    	oStreamRawLog   << "String Comment:          "   << logFileComment <<"\n" << endl;
    	oStreamRawLog   << "Parameters:            "							  << endl;
    	oStreamRawLog   << "ComPort:                 "   << comPort		      << "\n"
    				  << "Baud Rate:               "     <<  baudRate			  << "\n"
    				  << "Min Delay:	         "       <<  minDelay			  << "\n"
    				  << "Max Delay:	         "       <<  maxDelay			  << "\n"
    				  << "Expected BitError:       "     <<  expBitError		  << "\n"
    				  << "----------------------------------------"			      << endl;
    	oStreamRawLog << "Version:                 "     << version	    		  << endl;
    	oStreamRawLog << "Operating PC:            "     << computerName		  << endl;
    	oStreamRawLog << "Operating User:          "     << userName			  << endl;
    	oStreamRawLog << "Start Time:              "     << logFileTimeStamp  << endl;
    	//First Line
    	oStreamRawLog << "\n\nDate:\t\t\t" << "Time:      [ms]\t\t" << "Data Received:\t\t\t" <<"BitErrors:\t\t"<< "Delay:" << endl;    
    	oStreamRawLog.flush();
    }
    

    Verwendet wir Sie so:

    WriteRawHeader(oStreamRawLog, minDelay, maxDelay, expBitError, logFileComment, computerName, userName, comPort, baudRate, version, logFileTimeStamp);
    

    Nun kompiliert Visual C++ 6.0 nicht mehr. Der Debuger sagt mir folgendes:

    E:\Transit_Observer_V1_Extended\main.cpp(434) : error C2447: missing function header (old-style formal list?)

    Leider weis ich nicht was das Problem ist.

    Ich hoffe ihr könnt mir helfen.
    Danke & Gruss


  • Mod

    Mach das Semikolon nach dem Funktionskopf weg.



  • SeppJ schrieb:

    Mach das Semikolon nach dem Funktionskopf weg.

    Danke für die schnelle Antwort.
    Wie blöd von mir. Hab das semikolon nicht gesehen. Nachdem ich es geändert habe kommen 3 Linker Errors 😞

    --------------------Configuration: Transit_Observer - Win32 Debug--------------------
    Compiling...
    main.cpp
    Linking...
    main.obj : error LNK2001: unresolved external symbol "void __cdecl WriteErrorHeader(class std::basic_ofstream<char,struct std::char_traits<char> > &,int &,int &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >
    &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,class std::basic_string<char,struct std::char_traits<char>,class st
    d::allocator<char> > &,int &,int &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?WriteErrorHeader@@YAXAAV
    ?basic_ofstream@DU?basic\_ofstream@DU?char_traits@D@std@@@std@@AAH1AAV?basic_string@DU?basic\_string@DU?char_traits@D@std@@V?allocator@D@2@@2@22211ABV32@2@Z) main.obj : error LNK2001: unresolved external symbol "void \_\_cdecl WriteRawHeader(class std::basic\_ofstream > &,int &,int &,class std::basic\_string,class std::allocator > &, class std::basic\_string,class std::allocator > &,class std::basic\_string,class std::allocator > &,class std::basic\_string,class std: :allocator > &,int &,int &,class std::basic\_string,class std::allocator > const &,class std::basic\_string,class std::allocator > &)" (?WriteRawHeader@@YAXAAV?ba
    sic_ofstream@DU?char_traits@D@std@@@std@@AAH1AAV?char\_traits@D@std@@@std@@AAH1AAV?basic_string@DU?char_traits@D@std@@V?char\_traits@D@std@@V?allocator@D@2@@2@22211ABV32@2@Z)
    Debug/Transit_Observer.exe : fatal error LNK1120: 2 unresolved externals
    Error executing link.exe.
    Creating browse info file...

    Transit_Observer.exe - 3 error(s), 0 warning(s)



  • Hat sich erledigt


Anmelden zum Antworten