Quan, >Masaharu, >thanks for replying to my question regarding stl in cint. I got the >package and I copied the files in $CINTSYSDIR%\lib\stl to >%ROOTSYS%\lib\stl and $CINTSYSDIR%\stl to %ROOTSYS%\include\stl. Good. By they way, did you compile vector.dll, string.dll and map.dll? >What >I found is that vector related calls work but not all string related >calls do not. for example, the following string stuff works: > >Root > #include <string> >Root > string s = "Hi!" >Root > std::cout << s << std::endl >but if one uses string in a header file such as: > >#include <string> >class Class1 { >public: > Class1(); > //... > >private: > string s_MD; >}; > >and then generate dictionary files using: >rootcint class1_dict.cpp -c Class1.h >I will get an error that says: >Error: No symbol std::strings_MD in current scope >there does not appear to be any problem using vector in the above >mentioned fashion. I can not reproduce the problem. Above error message comes from cint. And it complains about std::string. But in the header file , you use string, not std::string. Another thing, There can be some difference between compiled string and interpreted string. You may need to deal with the difference by masking the string declaration as follows. private: #ifndef __MAKECINT__ string s_Md; #endif Masaharu Goto
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:41 MET