Frage zu boost::tokenizer
-
Hi,
typedef boost::tokenizer< boost::char_separator<char> > Tokenizer; //... void Tokenize(Tokenizer* tok) { if (tok && CallBack) { for (Tokenizer::iterator tok_iter = tok->begin(); tok_iter != tok->end(); ++tok_iter) { CallBack(*tok_iter); //<- Fehler } } }CallBack benötigt ein *char als Argument, ich habe keine Möglichkeit dies zu ändern.
Wie bekomm ich aus dem *tok_iter einen std::string oder gleich ein *char?Danke im voraus...
-
Also wenn das die richtige Vorgehensweise ist,wie du das da machst, dann nimm doch einfach einen Cast. (static_cast<char*>(*tok_iter) )
-
Dann bekomme ich das hier:
error: invalid static_cast from type
const std::basic\_string<char, std::char_traits<char>, std::allocator<char> >' to typechar*'EDIT: Habs geschafft mit:
&(*tok_iter->c_str())und der Änderung in const char*.
Trotzdem Danke
