wxLongLong& operator operator=(wxULongLong_t ll) wxLongLong& operator operator=(long l) wxLongLong& operator operator=(unsigned long l) wxLongLong& operator operator=(const wxULongLong & ll) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			230 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			230 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 | 
						|
%% Name:        longlong.tex
 | 
						|
%% Purpose:     wxLongLong documentation
 | 
						|
%% Author:      Vadim Zeitlin
 | 
						|
%% Modified by:
 | 
						|
%% Created:     07.03.00
 | 
						|
%% RCS-ID:      $Id$
 | 
						|
%% Copyright:   (c) Vadim Zeitlin
 | 
						|
%% License:     wxWindows license
 | 
						|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 | 
						|
 | 
						|
\section{\class{wxLongLong}}\label{wxlonglong}
 | 
						|
 | 
						|
This class represents a signed 64 bit long number. It is implemented using the
 | 
						|
native 64 bit type where available (machines with 64 bit longs or compilers
 | 
						|
which have (an analog of) {\it long long} type) and uses the emulation code in
 | 
						|
the other cases which ensures that it is the most efficient solution for
 | 
						|
working with 64 bit integers independently of the architecture.
 | 
						|
 | 
						|
wxLongLong defines all usual arithmetic operations such as addition,
 | 
						|
subtraction, bitwise shifts and logical operations as well as multiplication
 | 
						|
and division (not yet for the machines without native {\it long long}). It
 | 
						|
also has operators for implicit construction from and conversion to the native 
 | 
						|
{\it long long} type if it exists and {\it long}.
 | 
						|
 | 
						|
You would usually use this type in exactly the same manner as any other
 | 
						|
(built-in) arithmetic type. Note that wxLongLong is a signed type, if you
 | 
						|
want unsigned values use wxULongLong which has exactly the same API as
 | 
						|
wxLongLong except when explicitly mentioned otherwise.
 | 
						|
 | 
						|
If a native (i.e. supported directly by the compiler) 64 bit integer type was
 | 
						|
found to exist, {\it wxLongLong\_t} macro will be defined to correspond to it.
 | 
						|
Also, in this case only, two additional macros will be defined: 
 | 
						|
\helpref{wxLongLongFmtSpec}{wxlonglongfmtspec} for printing 64 bit integers
 | 
						|
using the standard {\tt printf()} function (but see also 
 | 
						|
\helpref{ToString()}{wxlonglongtostring} for a more portable solution) and
 | 
						|
\helpref{wxLL}{wxll} for defining 64 bit integer compile-time constants.
 | 
						|
 | 
						|
\wxheading{Derived from}
 | 
						|
 | 
						|
No base class
 | 
						|
 | 
						|
\wxheading{Include files}
 | 
						|
 | 
						|
<wx/longlong.h>
 | 
						|
 | 
						|
\latexignore{\rtfignore{\wxheading{Members}}}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::wxLongLong}\label{wxlonglongwxlonglongdef}
 | 
						|
 | 
						|
\func{}{wxLongLong}{\void}
 | 
						|
 | 
						|
Default constructor initializes the object to 0.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::wxLongLong}\label{wxlonglongwxlonglongll}
 | 
						|
 | 
						|
\func{}{wxLongLong}{\param{wxLongLong\_t }{ll}}
 | 
						|
 | 
						|
Constructor from native long long (only for compilers supporting it).
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::wxLongLong}\label{wxlonglongwxlonglong}
 | 
						|
 | 
						|
\func{}{wxLongLong}{\param{long }{hi}, \param{unsigned long }{lo}}
 | 
						|
 | 
						|
Constructor from 2 longs: the high and low part are combined into one
 | 
						|
wxLongLong.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator=}\label{wxlonglongoperatorassign}
 | 
						|
 | 
						|
\func{wxLongLong\& operator}{operator=}{\param{wxLongLong\_t }{ll}}
 | 
						|
 | 
						|
Assignment operator from native long long (only for compilers supporting it).
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator=}\label{wxlonglongoperatorassignull}
 | 
						|
 | 
						|
\func{wxLongLong\& operator}{operator=}{\param{wxULongLong\_t }{ll}}
 | 
						|
 | 
						|
Assignment operator from native unsigned long long (only for compilers 
 | 
						|
supporting it).
 | 
						|
 | 
						|
\newsince{2.7.0}
 | 
						|
 | 
						|
\membersection{wxLongLong::operator=}\label{wxlonglongoperatorassignlong}
 | 
						|
 | 
						|
\func{wxLongLong\& operator}{operator=}{\param{long }{l}}
 | 
						|
 | 
						|
Assignment operator from long.
 | 
						|
 | 
						|
\newsince{2.7.0}
 | 
						|
 | 
						|
\membersection{wxLongLong::operator=}\label{wxlonglongoperatorassignulong}
 | 
						|
 | 
						|
\func{wxLongLong\& operator}{operator=}{\param{unsigned long }{l}}
 | 
						|
 | 
						|
Assignment operator from unsigned long.
 | 
						|
 | 
						|
\newsince{2.7.0}
 | 
						|
 | 
						|
\membersection{wxLongLong::operator=}\label{wxlonglongoperatorassignulonglong}
 | 
						|
 | 
						|
\func{wxLongLong\& operator}{operator=}{\param{const wxULongLong \& }{ll}}
 | 
						|
 | 
						|
Assignment operator from unsigned long long. The sign bit will be copied too.
 | 
						|
 | 
						|
\newsince{2.7.0}
 | 
						|
 | 
						|
\membersection{wxLongLong::Abs}\label{wxlonglongabs}
 | 
						|
 | 
						|
\constfunc{wxLongLong}{Abs}{\void}
 | 
						|
 | 
						|
\func{wxLongLong\&}{Abs}{\void}
 | 
						|
 | 
						|
Returns an absolute value of wxLongLong - either making a copy (const version)
 | 
						|
or modifying it in place (the second one).  Not in wxULongLong.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::Assign}\label{wxlonglongassign}
 | 
						|
 | 
						|
\func{wxLongLong\&}{Assign}{\param{double }{d}}
 | 
						|
 | 
						|
This allows to convert a double value to wxLongLong type. Such conversion is
 | 
						|
not always possible in which case the result will be silently truncated in a
 | 
						|
platform-dependent way.  Not in wxULongLong.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::GetHi}\label{wxlonglonggethi}
 | 
						|
 | 
						|
\constfunc{long}{GetHi}{\void}
 | 
						|
 | 
						|
Returns the high 32 bits of 64 bit integer.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::GetLo}\label{wxlonglonggetlo}
 | 
						|
 | 
						|
\constfunc{unsigned long}{GetLo}{\void}
 | 
						|
 | 
						|
Returns the low 32 bits of 64 bit integer.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::GetValue}\label{wxlonglonggetvalue}
 | 
						|
 | 
						|
\constfunc{wxLongLong\_t}{GetValue}{\void}
 | 
						|
 | 
						|
Convert to native long long (only for compilers supporting it)
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::ToDouble}\label{wxlonglonggetdouble}
 | 
						|
 | 
						|
\constfunc{double}{ToDouble}{\void}
 | 
						|
 | 
						|
Returns the value as \texttt{double}.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::ToLong}\label{wxlonglongtolong}
 | 
						|
 | 
						|
\constfunc{long}{ToLong}{\void}
 | 
						|
 | 
						|
Truncate wxLongLong to long. If the conversion loses data (i.e. the wxLongLong
 | 
						|
value is outside the range of built-in long type), an assert will be triggered
 | 
						|
in debug mode.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::ToString}\label{wxlonglongtostring}
 | 
						|
 | 
						|
\constfunc{wxString}{ToString}{\void}
 | 
						|
 | 
						|
Returns the string representation of a wxLongLong.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator$+$}\label{wxlonglongoperatorplus}
 | 
						|
 | 
						|
\constfunc{wxLongLong}{operator$+$}{\param{const wxLongLong\& }{ll}}
 | 
						|
 | 
						|
Adds 2 wxLongLongs together and returns the result.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator$+=$}\label{wxlonglongoperatorplusassign}
 | 
						|
 | 
						|
\func{wxLongLong\&}{operator+}{\param{const wxLongLong\& }{ll}}
 | 
						|
 | 
						|
Add another wxLongLong to this one.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator$++$}\label{wxlonglongoperatorinc}
 | 
						|
 | 
						|
\func{wxLongLong\&}{operator$++$}{\void}
 | 
						|
 | 
						|
\func{wxLongLong\&}{operator$++$}{\param{int}{}}
 | 
						|
 | 
						|
Pre/post increment operator.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator$-$}\label{wxlonglongoperatorunaryminus}
 | 
						|
 | 
						|
\constfunc{wxLongLong}{operator$-$}{\void}
 | 
						|
 | 
						|
Returns the value of this wxLongLong with opposite sign.  Not in wxULongLong.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator$-$}\label{wxlonglongoperatorminus}
 | 
						|
 | 
						|
\constfunc{wxLongLong}{operator$-$}{\param{const wxLongLong\& }{ll}}
 | 
						|
 | 
						|
Subtracts 2 wxLongLongs and returns the result.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator$-=$}\label{wxlonglongoperatorminusassign}
 | 
						|
 | 
						|
\func{wxLongLong\&}{operator-}{\param{const wxLongLong\& }{ll}}
 | 
						|
 | 
						|
Subtracts another wxLongLong from this one.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxLongLong::operator$--$}\label{wxlonglongoperatordec}
 | 
						|
 | 
						|
\func{wxLongLong\&}{operator$--$}{\void}
 | 
						|
 | 
						|
\func{wxLongLong\&}{operator$--$}{\param{int}{}}
 | 
						|
 | 
						|
Pre/post decrement operator.
 | 
						|
 | 
						|
% TODO document all other arithmetics operations: shifts, multiplication,
 | 
						|
% division, bitwise, comparison
 | 
						|
 |