Hello! Ole Streicher writes: > When I put the "ClassDef" line into the class declaration, I get a > number of mystic linking errors when compiling the class: I managed that a to be a bit more sucessfull. The mein problem was that "rootcint" doesn't accept the "const" modifier in the definition of member variables. (why?) Now I can compile and link my program. However, when I try to use it from "root", I get some mysterious errors: root [0] gSystem->Load("run/.libs/libmyrun"); root [1] using namespace my; root [2] MyRun run("ll",1); Error: Can't call MyRun::MyRun("ll",1) in current scope FILE:/tmp/file4YJOh0_cint LINE:1 Possible candidates are... filename line:size busy function type and name (in MyRun) (compiled) 0:0 0 public: my::MyRun MyRun(my::string,int,my::string=none); (compiled) 0:0 0 public: my::MyRun MyRun(const my::MyRun&); *** Interpreter error recovered *** What I could imagine is that "root" has problems with namespaces; I declared the constructor of MyRun as my::MyRun::MyRun(std::string, int, std::string = "none"); but Root thinks it is my::MyRun::MyRun(my::string,int,my::string=none); What can I do that it takes "string" from namespace std and not from namespace "my"? And why it changes the namespace at all? Within a compiled program, everything works fine. Ole
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:06 MET