Index

XString

XCollectable &rarrXString


public
  • operator
  • operator[]
  • char *m_pszChar
  • operator char * ) { return m_pszChar
  • operator const char * ) { return m_pszChar
  • operator const double )
  • operator const int )
  • operator const long )
  • operator double )
  • operator int )
  • operator long )
  • size_t m_Length
  • Caster
  • GetBuffer
  • ReleaseBuffer
  • Comperasion
  • IsEmpty
  • StrCmp
  • operator !=
  • operator <
  • operator <=
  • operator ==
  • operator >
  • operator >=
  • Constructor/Destructor
  • XString
  • ~XString
  • Enhanced
  • Find
  • FindRev
  • Replace
  • Strip
  • Get
  • At
  • GetLength
  • Left
  • Mid
  • Right
  • Set
  • DelSubString
  • operator +=
  • operator =


  • Derrived

    : public XCollectable

    Author: Jens von Pilgrim

    Last change: 08.07.1996

    public

    operator

    Definition

    char* operator ( ) ( )

    char* operator ( ) ( size_t inCount )

    Returns

    char*

    operator[]

    Definition

    char operator[] ( size_t inZeroIndex )

    Returns

    char

    char *m_pszChar

    operator char * ) { return m_pszChar

    operator const char * ) { return m_pszChar

    operator const double )

    operator const int )

    operator const long )

    operator double )

    operator int )

    operator long )

    size_t m_Length

    Caster

    GetBuffer

    This is the most dangerous function, because it allows you access to the heart of XString, the char-buffer! Don't use this function for dircet manipulations of the buffer! This function has another job to do!

    The job of this method is to work as a caster, when some awefull and dirty C-functions needs a char-pointer, like sprintf. Size is the size you initialize the string, take care that the size is great enough!

    Don't forget to call the ReleaseBuffer()-Function after GetBuffer()! ReleaseBuffer correct the length of the string.

    The Size is exactly the size of chars in the buffer, the byte for the zero-byte is automatically added!

    See the example!

    Definition

    char* GetBuffer ( size_t Size )

    char* GetBuffer ( size_t Size=0 )

    Returns

    char*

    Examples

    XString a;

    double pi=3.14;

    sprintf(a.GetBuffer(100), "Pi = %2.3f", pi); a.ReleaseBuffer();

    ReleaseBuffer

    After getting the buffer with GetBuffer, and after setting the size of the string to Size, this function correct the size of the buffer, so that the size of the buffer is equal to the length of the string. Don't use any other function after GetBuffer, before not calling ReleaseBuffer!!!!!!!!!!

    Definition

    int ReleaseBuffer ( size_t Length )

    int ReleaseBuffer ( size_t Length=0 )

    Returns

    int

    Comperasion

    IsEmpty

    If the string is not allocated (f.e. a Stringpointer before calling new) is NOT empyt! If you call any String-Function before calling the Constructor, most functions fail and the program will exit by a failed assert!

    Definition

    int IsEmpty ( )

    Returns

    int

    True, if the String is empty

    False, else

    StrCmp

    Returns exactly the result from strcmp, usefull if other function needs this result. The Result is

    == 0: this string == inThen

    < 0: this string < inThen

    > 0: this string > inThen

    Definition

    int StrCmp ( const XString& inThen )

    virtual int StrCmp ( const XString& inThen )

    Returns

    int

    operator !=

    Compares one string with another, returns TRUE if both strings are not equal, else FALSE

    Definition

    virtual int operator != ( const XString& inThen )

    Returns

    int

    operator <

    Compares one string with another, returns TRUE if the first string is less then the second string, else FALSE

    Definition

    virtual int operator < ( const XString& inThen )

    Returns

    int

    operator <=

    Compares one string with another, returns TRUE if the first string is less/equal, else FALSE

    Definition

    virtual int operator <= ( const XString& inThen )

    Returns

    int

    operator ==

    Overload for Charpointer, because this case is often used!

    Compares one string with another, returns TRUE if both strings are equal, else FALSE

    Definition

    virtual int operator == ( const XString& inThen )

    virtual int operator == ( const char* inCharPtr )

    Returns

    int

    operator >

    Compares one string with another, returns TRUE if the first string is greater then the second string, else FALSE

    Definition

    virtual int operator > ( const XString& inThen )

    Returns

    int

    operator >=

    Compares one string with another, returns TRUE if the first string is greater/equal, else FALSE

    Definition

    virtual int operator >= ( const XString& inThen )

    Returns

    int

    Constructor/Destructor

    XString

    Constructs a string and casts an int, usefull as caster

    Constructs a string with first char == aChar

    Constructs a string as a copy of pszChar, usefull as caster

    Constructs a string as a copy of 'aString'

    Constructs an empty string

    Definition

    XString ( long aNumber, int Radix )

    XString ( int aNumber, int Radix )

    XString ( char aChar )

    XString ( char* pszChar, int DUPLICATE )

    XString ( char* pszChar )

    XString ( const XString& aString )

    XString ( )

    XString ( long aNumber, int Radix = 10 )

    XString ( int aNumber, int Radix = 10 )

    Returns

    -

    ~XString

    (Virtual) Destructor, removes string from memory

    Definition

    ~XString ( )

    virtual ~XString ( )

    Returns

    -

    Enhanced

    Find

    Because some parameters have standard values, you can call this method also with Find(pos, "...").

    Definition

    BOOL Find ( size_t& outPos, const XString& SubString, size_t From, size_t inTo )

    BOOL Find ( size_t& outPos, const XString& SubString, size_t From = 0, size_t inTo = 0 )

    Returns

    BOOL

    TRUE, if substring is in string, outPos is the (zero-indexed) position of the substring in string (the first). FALSE, if the substring was not found

    FindRev

    Because some parameters have standard values, you can call this method also with Find(pos, "...").

    Definition

    BOOL FindRev ( size_t& outPos, const XString& SubString, size_t From, size_t inTo )

    BOOL FindRev ( size_t& outPos, const XString& SubString, size_t From = 0, size_t inTo = 0 )

    Returns

    BOOL

    TRUE, if substring is in string, outPos is the (zero-indexed) position of the substring in string (the first). FALSE, if the substring was not found

    Replace

    This is one of the most powerful methods of XString. It works as the Search-Replace-Function of you editor. Of course, the search- and the replace-substring must NOT have the same length! The methods is working very fast, because it first searches the substring, allocs new memory by calculing the new size, and then a new string is build. When the new string is build, there is no more search necessary (only if the replacement-string is greater then the searchstring and the length of the searchstring is smaller then the size of a size_t-type!).

    In this moment I'm working at another Replace-method: Replace(BadEnglish, CorrectEnglish, everywhere in this docu...) ;-)

    Definition

    int Replace ( XString inSearch, XString inReplace, int inTimes, size_t inFrom, size_t inTo )

    int Replace ( XString inSearch, XString inReplace, int inTimes=XALL, size_t inFrom=0, size_t inTo=0 )

    Parameters

    inSearch is the substring to search, inReplace is the string wich replaces the searchstring, the substring is max. inTimes replaced and inFrom and inTo mark the scope.

    Returns

    int

    Number of replacements

    Strip

    Strip removes all inChars at the beginning (inWhere=XLEFT), at the end (inWhere=XRIGHT), at both ends (inWhere=XBOTH) or removes all inChars (inWhere=XALL) from the string! If you have to remove substring, use Replace() instead!

    Definition

    int Strip ( int inWhere, char inChar )

    int Strip ( int inWhere = XBOTH, char inChar = ' ' )

    Returns

    int

    Number of removed chars

    Get

    At

    The same as operator []. The first char has index 0!

    Definition

    char At ( size_t inZeroIndex )

    Returns

    char

    Returns the char at position inZeroIndex.

    GetLength

    Returns the length of the string!

    Definition

    size_t GetLength ( )

    virtual size_t GetLength ( )

    Returns

    size_t

    Left

    If Count>GetLength(), a copy of the string is returned, if Count is 0, an empty string is returned.

    Definition

    XString Left ( size_t Count )

    virtual XString Left ( size_t Count )

    Returns

    XString

    Returns the first Count chars as a XString from string. Thus, it's equal to Mid(0, nCount).

    Mid

    If From>GetLength(), an empty string is returned; if From+Count>GetLength(), a string with a length of (GetLength()-From) is returned.

    Definition

    XString Mid ( size_t From, size_t Count )

    virtual XString Mid ( size_t From, size_t Count )

    Returns

    XString

    Returns substring with Count-length from position From in string.

    Right

    What do you think this methods is for? See Left() for details, rigth up!

    Definition

    XString Right ( size_t Count )

    virtual XString Right ( size_t Count )

    Returns

    XString

    Set

    DelSubString

    Deletes inCount-chars from inFrom (Zero-Index!).

    Deletes the first place occurrence of inSubString

    Definition

    int DelSubString ( size_t inFrom, size_t inCount=1 )

    int DelSubString ( XString inSubString )

    Returns

    int

    operator +=

    Adds a string

    Definition

    XString operator += ( const char* Str )

    XString operator += ( const XString& Str )

    Returns

    XString

    Returns thisString+Str REMARS Concats string with another string Str and saves the result in string. Like this:

    XString a,b,c;

    ...

    a=(b+=c);

    Result: (a==b) = TRUE

    operator =

    The Sourcestring aString is copied (duplicated) to this-string

    Definition

    XString operator = ( const XString& aString )

    Returns

    XString

    Returns copy of aString


    Created by AutoDoc, (C) 1996 by Jens von Pilgrim