gaystring.h 670 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #ifndef _GAYSTRING_H_
  2. #define _GAYSTRING_H_
  3. #include <windows.h>
  4. class GayString
  5. {
  6. public:
  7. GayString(const char *initial=NULL);
  8. ~GayString();
  9. void Set(const char *value);
  10. char *Get();
  11. void Append(const char *append);
  12. void Grow(size_t newsize);
  13. void Compact();
  14. size_t Length();
  15. private:
  16. char *m_buf;
  17. size_t m_alloc;
  18. size_t len;
  19. };
  20. class GayStringW
  21. {
  22. public:
  23. GayStringW(const wchar_t *initial=NULL);
  24. ~GayStringW();
  25. void Set(const wchar_t *value);
  26. const wchar_t *Get();
  27. void Append(const wchar_t *append);
  28. void Grow(size_t newsize);
  29. void Compact();
  30. size_t Length();
  31. private:
  32. wchar_t *m_buf;
  33. size_t m_alloc;
  34. size_t len;
  35. };
  36. #endif//_GAYSTRING_H_