ROOT::Fit::DataRange & ROOT::Fit::Fitter


I use ROOT v5.22 and VC++ 2005 with Vista. I build dynamic libraries which I load and invoke from CINT.

I am having two issues:

  1. The statement

ROOT::Fit::DataRange r(xlow, xhigh)

works directly from CINT, but throws a C++ exception from inside compiled code. For methods in my dll’s it only works with ‘new’:

ROOT::Fit::DataRange * r = new ROOT::Fit::DataRange(xlow, xhigh)

  1. For ‘fitter’ a ROOT::Fit::Fitter object, the statement


throws an exception from inside compiled code.

Are these bugs?


P.S. I have been having similar problems to (2) with the << operator defined for some other of my classes: I have defined both “Print” methods and the << operator, which differ only in that the Print method directs the output to cout, while the << operator to an ostream object . My Print methods work, but the << operator results in C++ exceptions. Perhaps this is a CINT issue.


sorry for the very late reply - I totally overlooked your posting.

This looks like the usual mix of /MD vs /MDd vs /MT compiled code; make sure you use exactly the same flags as ROOT was built with: /MD for release, /MDd for debug.

Cheers, Axel.