I have a class called final it inherits attributes from a class called average. I am using constructor for the class. I am not to familiar with constructors but I know it initializes data members when it is instantiated. I am reading records from a file in a Do loop and it seems I must Declare this variable (Final FGrade(int, int, int) in the loop to get the program to work right(it works if it is outside the loop but it keeps processing the first record). Am I doing something wrong? One last thing I use a member function after the loop and try to use FGrade (FGrade.RoundNum(int,2)) it says it is undeclared and I have to call the variable again. Would someone tell me if I am missing something or is this the way it is supposed to work. I mean the program is working it just seems to me that at the very least when I use it after the loop that I shouldn't have to declare the variable again.