| | |
Unresolved External Symbol Error
Please support our C++ advertiser: Intel Parallel Studio Home
Thread Solved |
•
•
Join Date: Oct 2006
Posts: 3
Reputation:
Solved Threads: 0
Hello to you all,
I am having problems with some code that I am working on for a text parsing system from an external *.txt file. The problem seems to stem from the Tokenize function, as I get a:
"LNK2019 error: unresolved external symbol "void __cdecl Tokenize(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::vector<class std::basic_string<char,struct std::char_traits<char>, class std::allocator<char> >, class std::allocator<class std::basic_string<char, struct std::char_traits<char>,class std::allocator<char> > > > &)"
Thank you very much in advance,
Delphi
I am having problems with some code that I am working on for a text parsing system from an external *.txt file. The problem seems to stem from the Tokenize function, as I get a:
"LNK2019 error: unresolved external symbol "void __cdecl Tokenize(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::vector<class std::basic_string<char,struct std::char_traits<char>, class std::allocator<char> >, class std::allocator<class std::basic_string<char, struct std::char_traits<char>,class std::allocator<char> > > > &)"
C++ Syntax (Toggle Plain Text)
// stringtest.cpp #include <string> #include <algorithm> #include <vector> #include <iostream> #include <fstream> using namespace std; void Tokenize(const string& str, vector<string>& tokens); int main() { vector<string> tokens; char _string[256]; char inputChar[256]; string inputString; ifstream input; cout << "Enter name of an existing file: "; cin.get( _string, 256 ); input.open( _string ); input.getline( inputChar, 256 ); cout << inputChar << endl; inputString = inputChar; cout << inputString << endl << endl; Tokenize( inputString, token ); copy( tokens.begin(), tokens.end(), ostream_iterator<string>(cout, ", ")); return 0; } void Tokenize( const string& str, vector<string>& tokens, const string& delimiters = "|") { // Tokenize taken from [URL]http://www.hispafuentes.com/[/URL] // Skip delimiters at the beginning string::size_type lastPos = str.find_first_not_of( delimeters, 0 ); // Find first "non-delimiter". string::size_type pos = str.find_first_of( delimiters, lastPos ); while (string::npos != pos || string::npos != lastPos) { // Found a token add it to the vector tokens.push_back( str.substr(lastPos, pos - lastPos)); // Skip delimiters. Note the "not_of" lastPos = str.find_first_not_of( delimiters, pos); // Find next "non-delimiter" pos = str.find_first_of( delimiters, lastPos ); } }
Thank you very much in advance,
Delphi
Last edited by delphi_uk; Mar 15th, 2007 at 7:50 pm.
How in the world did you get it to compile? For one thing, you'll need to #include <iterator> if you intend on using
ostream_iterator. C++ Syntax (Toggle Plain Text)
int main() { vector<string> tokens; char _string[256]; char inputChar[256]; string inputString; ifstream input; cout << "Enter name of an existing file: "; cin.get( _string, 256 ); input.open( _string ); input.getline( inputChar, 256 ); cout << inputChar << endl; inputString = inputChar; cout << inputString << endl << endl; Tokenize( inputString, token ); // add an 's' to 'token'
C++ Syntax (Toggle Plain Text)
void Tokenize( const string& str, vector<string>& tokens, const string& delimiters = "|") { // Tokenize taken from [url]http://www.hispafuentes.com/[/url] // Skip delimiters at the beginning string::size_type lastPos = str.find_first_not_of( delimeters, 0 ); // you're spelling 'delimiters' wrong
"Technological progress is like an axe in the hands of a pathological criminal."
•
•
Join Date: Oct 2006
Posts: 3
Reputation:
Solved Threads: 0
•
•
•
•
How in the world did you get it to compile? For one thing, you'll need to #include <iterator> if you intend on using ostream_iterator. My appologies on the spelling mistake, that was human error as I copied the code from my laptop to the desktop, in the original program this was correct.
•
•
•
•
C++ Syntax (Toggle Plain Text)
void Tokenize( const string& str, vector<string>& tokens, const string& delimiters = "|") { // Tokenize taken from [url]http://www.hispafuentes.com/[/url] // Skip delimiters at the beginning string::size_type lastPos = str.find_first_not_of( delimeters, 0 ); // you're spelling 'delimiters' wrong
However non of these issues that were brought up solved the issue of the LNK2019 error.
Also thank you very much for the fast response, I have lurked on these forums and used some solutions for quite some time, however this is the first time I have needed to ask a question.
Delphi
Last edited by delphi_uk; Mar 15th, 2007 at 8:15 pm.
Another note: you should place your default parameter thingy in the function prototype instead of the actual function implementation. This is likely what's causing the linker errors.
[edit]
The actual reason for the linker errors is this:
You never included the third parameter, delimiters. No wonder the linker choked up.
[edit]
The actual reason for the linker errors is this:
C++ Syntax (Toggle Plain Text)
void Tokenize(const string& str, vector<string>& tokens);
Last edited by John A; Mar 15th, 2007 at 8:32 pm.
"Technological progress is like an axe in the hands of a pathological criminal."
![]() |
Similar Threads
- unresolved external symbol error (C++)
- Need help with "error LNK2001 unresolved external symbol" (C++)
- error LNK2001: unresolved external symbol (C++)
- error LNK2001: unresolved external symbol (C++)
- error LNK2001: unresolved external symbol (C++)
- unresolved external symbol when using a hashtable class (C++)
- error LNK2001: unresolved external symbol (C++)
Other Threads in the C++ Forum
- Previous Thread: help me......
- Next Thread: To fetch data through command line arguments
| Thread Tools | Search this Thread |
api array based beginner binary bitmap c++ c/c++ calculator char char* class classes code coding compile compiler console conversion count database delete deploy desktop developer directshow dll download dynamiccharacterarray email encryption error file forms fstream function functions game givemetehcodez graph gui homeworkhelp homeworkhelper iamthwee ifstream input int integer java lib linux list loop looping loops map math matrix memory multiple news node number numbertoword output parameter pointer problem program programming project python random read recursion recursive reference return rpg sorting string strings struct temperature template templates text text-file tree url variable vector video visualstudio win32 windows winsock word wordfrequency wxwidgets






