Hi Zaldy
The error I think is in while loop:
while(fin.eof() == false) {
> fin >> rn >> spl;
> }
While declaration of ifstream you use (ifstream in) & in while loop you
use fin.
If you use in instead of fin in the while loop :
while(in.eof() == false){
in>> rn >> spl;
}
It will work.
Regards
Pawan
> Dear Folks,
>
> When not using Root Application, I used to write a code using ifstream in
> COMPILED Code like this below. Things are just Ok. But when I used this
> using root, I get a compilation error message as I also shown below.
>
> What is wrong with my code?
> Any Hint please.
>
> I have attached a small tar file reproducing this problem.
>
> I am using root Version 3.10/01 28 November 2003
> with gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
>
> Thanks in advance.
> Zaldy
>
>
> ===========================Compilation error message
> g++ -O -Wall -fPIC -Wno-deprecated -D_REENTRANT
> -I/CERN_SOFT/myroot/include/root -c -o HitInfo.o HitInfo.cc
> In file included from HitInfo.cc:3:
> HitInfo.hh:37:39: warning: no newline at end of file
> HitInfo.cc: In member function `void HitInfo::Write_To_RootFile(char*)':
> HitInfo.cc:19: aggregate `std::ifstream fin' has incomplete type and
> cannot be
> defined
> make: *** [HitInfo.o] Error 1
>
>
>
> ============================Sample code
> #include <fstream.h>
> #include <ifstream.h>
> .....
> .....
>
> ifstream in;
> in.open("Filename.dat",ios::in);
>
> Int_t rn, spl;
>
> while(fin.eof() == false) {
> fin >> rn >> spl;
> }
>
> .......
> .......
>
>
> --
> Zaldy A. Nawang
>
>
>
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:09 MET