Customising

next - skip - up - start

The file include.h sets a variety of options including several compiler dependent options. You may need to edit include.h to get the options you require. If you are using a compiler different from one I have worked with you may have to set up a new section in include.h appropriate for your compiler.

Borland, Turbo, Gnu, Microsoft and Watcom are recognised automatically. If none of these are recognised a default set of options is used. These are fine for AT&T, HPUX and Sun C++. If you using a compiler I don't know about you may have to write a new set of options.

There is an option in include.h for selecting whether you use compiler supported exceptions, simulated exceptions, or disable exceptions. Use the option for compiler supported exceptions if and only if you have set the option on your compiler to recognise exceptions. Disabling exceptions sometimes helps with compilers that are incompatible with my exception simulation scheme.

If your compiler recognises bool as required by the standard activate the statement #define bool_LIB. This will deactivate my Boolean class.

Activate the appropriate statement to make the element type float or double.

I suggest you leave the option TEMPS_DESTROYED_QUICKLY activated, even though the Gnu compiler (<2.6) is the only one I know about that requires it (C-Set also requires it?). This stores the trees describing matrix expressions on the heap rather than the stack and, surprisingly, seems to give better performance. See the discussion on destruction of temporaries for more explanation.

Leave the option TEMPS_DESTROYED_QUICKLY_R not activated unless you are using the Gnu G++ compiler earlier than version 2.6. This option controls whether the ReturnMatrix construct uses the stack or the heap. The heap version is rather kludgy and probably should be avoided where possible.

The option DO_FREE_CHECK is used for tracking memory leaks and normally should not be activated.

Activate SETUP_C_SUBSCRIPTS if you want to use traditional C style element access.

next - skip - up - start