home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / dho.zip / DHO / SRC / TSTRING.CC < prev    next >
C/C++ Source or Header  |  1995-08-27  |  2KB  |  100 lines

  1. /****************************************/
  2. /*    Developer Helper Object Set       */
  3. /*  (C) 1994-95 Thomas E. Bednarz, Jr.  */
  4. /*     All rights reserved              */
  5. /***************************************/
  6.  
  7. /* $Id: tstring.cc 1.2 1995/08/13 03:21:12 teb Exp $ */
  8.  
  9. #include"tstring.h"
  10. #include"string.h"
  11.  
  12.  
  13. TString::TString(char *str)
  14. {
  15.   fString = new char[strlen(str)+1];
  16.   strcpy(fString, str);
  17. }
  18.  
  19. TString::~TString()
  20. {
  21.    delete fString;
  22. }
  23.  
  24.      
  25. char *TString::getString()
  26. {
  27.    return fString;
  28. }
  29.  
  30. TString *TString::Duplicate()
  31. {
  32.    TString *dup;
  33.  
  34.    dup = new TString(fString);
  35.    return dup;
  36. }
  37.  
  38. const char *TString::getClassName(void)
  39. {
  40.    return "TString";
  41. }
  42.  
  43.  
  44. Boolean TString::isSubString(TString str)
  45. {
  46.    return (Boolean)(strstr(fString, str.fString)!=NULL);
  47. }
  48.  
  49. TString &TString::operator + (TString &str2)
  50. {
  51.    char *tmp;
  52.    tmp = new char[strlen(fString)+ strlen(str2.fString)+1];
  53.    strcpy(tmp, fString);
  54.    strcat(tmp, str2.fString);
  55.  
  56.    delete fString;
  57.    fString=tmp;
  58.    return *this;
  59. }
  60.  
  61.  
  62. TString &TString::operator = (TString &str2)
  63.    char *tmp=new char[strlen(str2.fString)+1];
  64.  
  65.    strcpy(tmp, str2.fString);
  66.    delete fString;
  67.    fString = tmp;
  68.  
  69.    return *this;
  70. }
  71.  
  72.  
  73.  
  74.  
  75. Boolean TString::operator ==  (TString &str2)
  76. {
  77.    return (Boolean)(strcmp(fString, str2.fString)==0);
  78. }
  79.  
  80. Boolean TString::operator < (TString &str2)
  81. {
  82.    return (Boolean)(strcmp(fString, str2.fString)<0);
  83. }
  84.  
  85. Boolean TString::operator <= (TString &str2)
  86. {
  87.    return (Boolean)(strcmp(fString, str2.fString)<=0);
  88. }
  89.  
  90. Boolean TString::operator > (TString &str2)
  91. {
  92.    return (Boolean)(strcmp(fString, str2.fString)>0);
  93. }
  94.  
  95. Boolean TString::operator >= (TString &str2)
  96. {
  97.    return (Boolean)(strcmp(fString, str2.fString)>=0);
  98. }
  99.