[Allegro] Przesyłanie argumentów przez referencję
Ostatnio zmodyfikowano 2009-08-08 21:00
malan Temat założony przez niniejszego użytkownika |
[Allegro] Przesyłanie argumentów przez referencję » 2009-08-08 20:46:41 Witam. Mam taki oto plik: #ifndef xxx_hpp #define xxx_hpp
#include <string>
void NowyProfil( void ); void NowyProfil( std::string & nplog, std::string & nphaslo );
#endif
Wszystko byłoby ok gdyby kompilator nie wywalał mi: [Linker error] undefined reference to `NowyProfil(std::string, std::string)' Dzieje się tak tylko kiedy próbuję przesłać argument przez referencję. W czym tkwi problem? |
|
DejaVu |
» 2009-08-08 20:48:45 void NowyProfil( std::string & nplog, std::string & nphaslo ); To jest Deklaracja funkcji. Definicja funkcji nie uległa prawdopodobnie zmianom, a kompilator Ci krzyczy, że nie istnieje definicja funkcji odpowiadająca temu zapisowi. Dopisz w definicji funkcji również ampersand'y i będzie dobrze :) |
|
malan Temat założony przez niniejszego użytkownika |
» 2009-08-08 20:53:14 Właśnie o to chodzi, że nie... ;p. Plik xxx.cpp wygląda tak: void NowyProfil( void ) { }; void NowyProfil( std::string & nplog, std::string & nphaslo ) { };
Sprawdzałem to już kilka razy. |
|
DejaVu |
» 2009-08-08 20:56:31 W takim razie zrób rebuild :) |
|
malan Temat założony przez niniejszego użytkownika |
» 2009-08-08 21:00:40 Znalazłem błąd- w wywołaniu tej funkcji. Kiedy zamieniłem: NowyProfil( nowy_login, nowe_haslo );
... na: NowyProfil( nowylogin, nowehaslo );
... działa :). Dziwne... |
|
« 1 » |