CppUnit project page CppUnit home page

int64.h

Go to the documentation of this file.
00001 #ifndef CPPTL_INT64_H_INCLUDED
00002 # define CPPTL_INT64_H_INCLUDED
00003 
00004 # include "forwards.h"
00005 
00006 namespace CppTL
00007 {
00008 
00009 // (a+b) c = ac + bc
00010 // (a+b) (c+d) = a(c+d) + b(c+d) = ac + ad + bc + bd
00011 
00012 
00013 /*
00014  x1 = a1 + b1 * 2^32
00015  x2 = a2 + b2 * 2^32
00016  x1 + x2 = a1 + a2 + (b1+b2) * 2^32  # carry a1+a2 => b1+b2
00017  x1 * x2 = a1 * (a2 + b2 * 2^32) + b1 * 2^32 * (a2 + a2 + b2 * 2^32)
00018  */
00019 // See http://www.mozilla.org/projects/nspr/reference/html/Prtyp.html#integer-types-64
00020 // #include <prtypes.h>
00021 // macros are defined in prlong.h to manipulate 64 bits types.
00022 //
00023 
00024 // Aside: http://www.flexbeta.net/forums/lofiversion/index.php/t5534.html
00025 // has a decent review of what changed on x64.
00026 
00027 class Int64
00028 {
00029 };
00030 
00031 
00032 } // namespace CppTL
00033 
00034 
00035 
00036 #endif // CPPTL_INT64_H_INCLUDED
00037 

SourceForge Logo hosts this site. Send comments to:
CppUnit Developers