programminga general overview constructorwhich is implied because the one-parameter constructor says that initialvalue is optional the default value of signifies that is used if no parameter is provided default parameters can be used in any functionbut they are most commonly used in constructors initialization list the intcell constructor uses an initialization list (figure line prior to the body of the constructor the initialization list is used to initialize the data members directly in figure there' hardly differencebut using initialization lists instead of an assignment statement in the body saves time in the case where the data members are class types that have complex initializations in some cases it is required for instanceif data member is const (meaning that it is not changeable after the object has been constructed)then the data member' value can only be initialized in the initialization list alsoif data member is itself class type that does not have zero-parameter constructorthen it must be initialized in the initialization list line in figure uses the syntax storedvalueinitialvalue instead of the traditional storedvalueinitialvalue the use of braces instead of parentheses is new in ++ and is part of larger effort to provide uniform syntax for initialization everywhere generally speakinganywhere you can initializeyou can do so by enclosing initializations in braces (though there is one important exceptionin section relating to vectors /* class for simulating an integer memory cell *class intcell publicexplicit intcellint initialvalue storedvalueinitialvalue int readconst return storedvaluevoid writeint storedvalue xprivateint storedvalue}figure intcell class with revisions