+#ifdef _WIN32\r
+//min y max entran en conflicto con la windows.h, son rebautizadas en Windows\r
+#define min _cpp_min\r
+#define max _cpp_max\r
+#endif\r
+\r
#include <vector>
#include <algorithm>
#include <iterator>
{
atomic_type c = 0;
size_type ini = 0;
- size_type fin = std::min(chunk.size(), n.chunk.size());
+ size_type fin = std::min(chunk.size(), n.chunk.size());\r
+ size_type i; //problema de VC++, da error de redefinición\r
+
// "intersección" entre ambos chunks
// +-----+-----+------+------+
// | | | | | <--- mio
//
// |------------------|
// Esto se procesa en este for
- for (size_type i = ini; i < fin; ++i)
+ for (i = ini; i < fin; ++i)
{
chunk[i] += n.chunk[i] + c;
if (chunk[i] || (!n.chunk[i] && !c)) c = 0; // OK
// (suma los chunks de n propagando algún carry si lo había)
ini = fin;
fin = n.chunk.size();
- for (size_type i = ini; i < fin; ++i)
+ for (i = ini; i < fin; ++i)
{
chunk.push_back(n.chunk[i] + c); // Agrego nuevo átomo
if (chunk[i] || !c) c = 0; // OK