Clase wxLongLong
Esta es una clase heredada que envuelve un entero de 64 bits.
Nota: Esta clase está obsoleta ya que no hay implementaciones soportadas que no proporcionen un tipo entero nativo de 64 bits y el código de la aplicación debe utilizar "long long" o "std::int64_t" directamente en lugar de utilizar esta clase.
wxLongLong define todas las operaciones aritméticas habituales como sumas, restas, desplazamientos entre bits y operaciones lógicas, así como multiplicaciones y divisiones (todavía no para las máquinas sin long long nativo). También tiene operadores para la construcción implícita desde y la conversión al tipo long long nativo si existe y long.
Normalmente se utilizaría este tipo exactamente de la misma manera que cualquier otro tipo aritmético (incorporado). Hay que tener en cuenta que wxLongLong es un tipo con signo, si se desean valores sin signo utilizar wxULongLong que tiene casi exactamente la misma API que wxLongLong.
Si se encuentra que existe un tipo entero de 64 bits nativo (es decir, soportado directamente por el compilador), se definirá la macro wxLongLong_t para que se corresponda con él. Además, sólo en este caso, se definirán dos macros adicionales:
- wxLongLongFmtSpec() para imprimir enteros de 64 bits utilizando la función estándar printf() (pero véase también wxLongLong::ToString para una solución más portable);
- wxLL() para definir constantes de compilación de enteros de 64 bits.
Funciones miembro
wxLongLong()
wxLongLong::wxLongLong()
El constructor por defecto inicializa el objeto a 0.
wxLongLong()
wxLongLong::wxLongLong(wxLongLong_t ll)
Constructor a partir de long long nativo (sólo para compiladores que lo soporten).
wxLongLong()
wxLongLong::wxLongLong( long hi, unsigned long lo )
Constructor a partir de 2 longs: la parte alta y baja se combinan en un wxLongLong.
Abs()
wxLongLong& wxLongLong::Abs()
Devuelve un valor absoluto de wxLongLong - ya sea haciendo una copia (versión const) o modificándolo en su lugar (la segunda).
Abs()
wxLongLong wxLongLong::Abs() const
Devuelve un valor absoluto de wxLongLong - ya sea haciendo una copia (versión const) o modificándolo en su lugar (la segunda).
Assign()
wxLongLong wxLongLong::Assign(double d)
Permite convertir un valor double a tipo wxLongLong.
Dicha conversión no siempre es posible, en cuyo caso el resultado se truncará silenciosamente de forma dependiente de la plataforma.
GetHi()
long wxLongLong::GetHi() const
Devuelve los 32 bits altos de un entero de 64 bits.
GetLo()
unsigned long wxLongLong::GetLo() const
Devuelve los 32 bits inferiores de un entero de 64 bits.
GetValue()
wxLongLong_t wxLongLong::GetValue() const
Convierte a long long nativo (sólo para compiladores que lo soporten).
ToDouble()
double wxLongLong::ToDouble() const
Devuelve el valor como double.
ToLong()
long wxLongLong::ToLong() const
Trunca wxLongLong a long.
Si la conversión pierde datos (es decir, el valor de wxLongLongestá fuera del rango del tipo long incorporado), se lanzará un assert en modo debug.
ToString()
wxString wxLongLong::ToString() const
Devuelve la representación en cadena de un wxLongLong.
Operadores miembro
operator+()
wxLongLong& wxLongLong::operator+(const wxLongLong & ll)
Añade otro wxLongLong a este.
operator+()
wxLongLong wxLongLong::operator+(const wxLongLong & ll) const
Suma 2 wxLongLongs y devuelve el resultado.
operator++()
wxLongLong wxLongLong::operator++()
Operador de pre/post incremento.
operator++()
wxLongLong wxLongLong::operator++(int)
Operador de pre/post incremento.
operator-()
wxLongLong wxLongLong::operator-() const
Devuelve el valor de este wxLongLong con signo opuesto.
operator-()
wxLongLong& wxLongLong::operator-(const wxLongLong & ll)
Resta otro wxLongLong de este.
operator-()
wxLongLong wxLongLong::operator-(const wxLongLong & ll) const
Resta 2 wxLongLongs y devuelve el resultado.
operator--()
wxLongLong wxLongLong::operator--()
Operador de decremento pre/post.
operator--()
wxLongLong wxLongLong::operator--(int)
Operador de decremento pre/post.
operator=()
wxLongLong& wxLongLong::operator=(const wxLongLong & ll)
Operador de asignación de unsigned long long.
El bit de signo también se copiará.
operator=()
wxLongLong& wxLongLong::operator=(long l)
Operador de asignación a partir de long.
operator=()
wxLongLong& wxLongLong::operator=(unsigned long l)
Operador de asignación a partir de unsigned long.
operator=()
wxLongLong& wxLongLong::operator=(wxLongLong_t ll)
Operador de asignación de long long nativo (sólo para compiladores que lo soporten).
operator=()
wxLongLong& wxLongLong::operator=(wxLongLong_t ll)
Operador de asignación desde unsigned long long nativo (sólo para compiladores que lo soporten).