home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-385-Vol-1of3.iso / n / newmat06.zip / INCLUDE.H < prev    next >
C/C++ Source or Header  |  1992-12-03  |  3KB  |  114 lines

  1. //$$ include.h           include files required by various versions of C++
  2.  
  3. //#define Glock                         // for Glockenspiel on the PC
  4. //#define ATandT                        // for AT&T C++ on a Sun
  5.  
  6. #ifdef __GNUG__
  7. #define GXX                             // for Gnu C++
  8. #endif
  9.  
  10. #define TEMPS_DESTROYED_QUICKLY         // for compiler that delete
  11.                     // temporaries too quickly
  12.  
  13. //#define DO_FREE_CHECK                   // check news and deletes balance
  14.  
  15. #define USING_DOUBLE                    // elements of type double
  16. //#define USING_FLOAT                   // elements of type float
  17.  
  18. #define Version21                       // version 2.1 or later
  19.  
  20.  
  21. #ifdef __ZTC__                          // Zortech
  22.    #include <stdlib.h>
  23.    #ifdef WANT_STREAM
  24.       #include <stream.hpp>
  25.       #define flush ""                  // doesn't have io manipulators
  26.    #endif
  27.    #ifdef WANT_MATH
  28.       #include <math.h>
  29.       #include <float.h>
  30.    #endif
  31. #endif
  32.  
  33. #ifdef __BCPLUSPLUS__                   // Borland
  34.    #include <stdlib.h>
  35.    #ifdef WANT_STREAM
  36.       #include <iostream.h>
  37.       #include <iomanip.h>
  38.    #endif
  39.    #ifdef WANT_MATH
  40.       #include <math.h>
  41.       #define SystemV                   // optional in Borland
  42.       #include <values.h>               // Borland has both float and values
  43.    #endif
  44.    #undef __TURBOC__                    // also defined in Borland
  45. #endif
  46.  
  47. #ifdef __TURBOC__                       // Turbo
  48.    #include <stdlib.h>
  49.    #ifdef WANT_STREAM
  50.       #include <iostream.h>
  51.       #include <iomanip.h>
  52.    #endif
  53.    #ifdef WANT_MATH
  54.       #include <math.h>
  55.       #define SystemV                   // optional in Turbo
  56.       #include <values.h>
  57.    #endif
  58. #endif
  59.  
  60. #ifdef ATandT                           // AT&T
  61. #include <stdlib.h>
  62. #ifdef WANT_STREAM
  63. #include <iostream.h>
  64. #include <iomanip.h>
  65. #endif
  66. #ifdef WANT_MATH
  67. #include <math.h>
  68. #define SystemV                         // must use System V on my Sun
  69. #include <values.h>                     //    as float.h is not present
  70. #endif
  71. #endif
  72.  
  73. #ifdef GXX                              // Gnu C++
  74.    #include <stdlib.h>
  75.    #ifdef WANT_STREAM
  76.       #include <stream.h>               // no iomanip in G++
  77.       #define flush ""
  78.    #endif
  79.    #ifdef WANT_MATH
  80.       #include <math.h>
  81.       #include <float.h>
  82.    #endif
  83.    #ifndef TEMPS_DESTROYED_QUICKLY
  84.       #define TEMPS_DESTROYED_QUICKLY
  85.    #endif
  86. #endif
  87.  
  88. #ifdef Glock                            // Glockenspiel
  89.    extern "C" { #include <stdlib.h> }
  90.    #ifdef WANT_STREAM
  91.       #include <stream.hxx>
  92.       #include <iomanip.hxx>
  93.    #endif
  94.    #ifdef WANT_MATH
  95.       extern "C" { #include <math.h> }
  96.       extern "C" { #include <float.h> }
  97.    #endif
  98.    #define NO_LONG_NAMES                // very long names don't work
  99. #endif
  100.  
  101.  
  102.  
  103. #ifdef USING_FLOAT                      // set precision type to float
  104. typedef float Real;
  105. typedef double long_Real;
  106. #endif
  107.  
  108. #ifdef USING_DOUBLE                     // set precision type to double
  109. typedef double Real;
  110. typedef long double long_Real;
  111. #endif
  112.  
  113.  
  114.