#endif
#include "wx/defs.h"
-#include "wx/wxchar.h"
+#include "wx/string.h"
#include <limits.h> // for LONG_MAX
#endif
class WXDLLEXPORT wxLongLongWx;
+#if defined(__VISUALC__) && !defined(__WIN32__)
+ #define wxLongLong wxLongLongWx
+#else
typedef wxLongLongWx wxLongLong;
+#endif
+
#else
// if nothing is defined, use native implementation by default, of course
#ifndef wxUSE_LONGLONG_NATIVE
// negation operator
wxLongLongNative operator-() const
{ return wxLongLongNative(-m_ll); }
+ wxLongLongNative& Negate() { m_ll = -m_ll; return *this; }
// subtraction
wxLongLongNative operator-(const wxLongLongNative& ll) const
{ return m_ll >= l; }
// miscellaneous
+
+ // return the string representation of this number
+ wxString ToString() const;
+
// conversion to byte array: returns a pointer to static buffer!
void *asArray() const;
#if wxUSE_STD_IOSTREAM
// input/output
- friend ostream& operator<<(ostream&, const wxLongLongNative&);
+ friend wxSTD ostream& operator<<(wxSTD ostream&, const wxLongLongNative&);
#endif
private:
wxLongLongWx& remainder) const;
// input/output
-#if wxUSE_STD_IOSTREAM
- friend ostream& operator<<(ostream&, const wxLongLongWx&);
-#endif // wxUSE_STD_IOSTREAM
+
+ // return the string representation of this number
+ wxString ToString() const;
void *asArray() const;
+#if wxUSE_STD_IOSTREAM
+ friend wxSTD ostream& operator<<(wxSTD ostream&, const wxLongLongWx&);
+#endif // wxUSE_STD_IOSTREAM
+
private:
// long is at least 32 bits, so represent our 64bit number as 2 longs