title: Representing 128-bit numbers in C++
body: <p>What's the best way to represent a 128-bit number in C++? It should behave as closely to the built-in numeric types as possible (i.e. support all the arithmetic operators, etc).</p>
  
  <p>I was thinking of building a class that had 2 64 bit or 4 32 bit numbers. Or possibly just creating a 128 bit block of memory and doing everything myself.</p>
  
  <p>Is there some easier/more standard way, or something that I'm less likely to screw up when implementing it myself? :)</p>
  
  <p>It would also be nice if it could be extended to 256-bit, 512-bit, etc...</p>