Hi,
I have a stl-container member in a class:
x.h <<END
#ifndef _x_h_
#define _x_h_
#include <TObject.h>
#include <vector>
class x : public TObject{
public:
vector<int> mV;
ClassDef(x,1)
};
#endif
END
x.cxx <<END
#include "x.h"
ClassImp(x)
END
doing the rootcint, compile and link routine ...
excrept from makefile <<END
all: dict lib
%.o: %.cxx
${CXX} ${CPPFLAGS} -c -o $@ ${CXXFLAGS} $<
${DICT}.cxx: ${DHDRS}
@echo "Generating dictionary ..."
@rootcint -f ${DICT}.cxx -c ${DHDRS}
dict: ${DICT}.cxx
lib: ${DOBJS}
${LD} -shared -o ${OUTLIB} ${DOBJS} ${ROOTLIBS}
END
root session:
root [0] #include <vector>
root [1] gSystem->Load("xdict.so")
root [2] x y
root [3] y.mV.push_back(3)
Error: Can't call vector<int,__malloc_alloc_template<0> >::push_back(3) in
current scope FILE:/tmp/fileIZc85C_cint LINE:1
Possible candidates are...
filename line:size busy function type and name (in
vector<int,__malloc_alloc_template<0> >)
*** Interpreter error recovered ***
shouldn't this work?
thanks ...
cheers,
matevz
--
---------------------------------------------------
Matevz Tadel, E-mail: Matevz.Tadel@ijs.si
Department of Experimental High Energy Physics F9
Jozef Stefan Institute, Jamova 39, P.o.Box 3000
SI-1001 Ljubljana, Slovenia
Tel.: +386-61-177-3674 Fax: +386-61-125-7074
---------------------------------------------------
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:31 MET