1 
2 #include <chstring.h>
3 
4 class CHString2 : CHString
5 {
6 public:
7     void
UseStuff(void)8     UseStuff(void)
9     {
10         AllocBeforeWrite(1);// ?AllocBeforeWrite@CHString@@IAEXH@Z(long)
11         AllocBuffer(1);// ?AllocBuffer@CHString@@IAEXH@Z(long)
12         AllocCopy(*this, 1, 2, 3);// ?AllocCopy@CHString@@IBEXAAV1@HHH@Z(ptr long long long)
13         AllocSysString(); // ?AllocSysString@CHString@@QBEPAGXZ()
14         AssignCopy(1, L"test");// ?AssignCopy@CHString@@IAEXHPBG@Z(long wstr)
15 // ??0CHString@@QAE@ABV0@@Z(ptr)
16 // ??0CHString@@QAE@PBD@Z(str)
17 // ??0CHString@@QAE@PBE@Z(str)
18 // ??0CHString@@QAE@PBG@Z(wstr)
19 // ??0CHString@@QAE@PBGH@Z(wstr long)
20 // ??0CHString@@QAE@GH@Z(long long)
21 // ??0CHString@@QAE@XZ()
22         Collate(L"test");// ?Collate@CHString@@QBEHPBG@Z(wstr)
23         Compare(L"test");// ?Compare@CHString@@QBEHPBG@Z(wstr)
24         CompareNoCase(L"test");// ?CompareNoCase@CHString@@QBEHPBG@Z(wstr)
25         ConcatCopy(1, L"test", 2, L"data");// ?ConcatCopy@CHString@@IAEXHPBGH0@Z(long wstr long wstr)
26         ConcatInPlace(1, L"test");// ?ConcatInPlace@CHString@@IAEXHPBG@Z(long wstr)
27         CopyBeforeWrite();// ?CopyBeforeWrite@CHString@@IAEXXZ()
28         Empty();// ?Empty@CHString@@QAEXXZ()
29         Find(L"test");// ?Find@CHString@@QBEHPBG@Z(wstr)
30         Find(L'a');// ?Find@CHString@@QBEHG@Z(long)
31         FindOneOf(L"abc");// ?FindOneOf@CHString@@QBEHPBG@Z(wstr)
32         Format(1, 123);// ?Format@CHString@@QAAXIZZ(long long long)
33         Format(L"Format %x", 123);// ?Format@CHString@@QAAXPBGZZ(long wstr long)
34         FormatMessageW(1, 123);// ?FormatMessageW@CHString@@QAAXIZZ(long long long)
35         FormatMessageW(L"Format %x", 123);// ?FormatMessageW@CHString@@QAAXPBGZZ(long ptr long)
36         FormatV(L"Format %x", NULL);// ?FormatV@CHString@@QAEXPBGPAD@Z(wstr long)
37         FreeExtra();// ?FreeExtra@CHString@@QAEXXZ()
38         GetAllocLength();// ?GetAllocLength@CHString@@QBEHXZ()
39         GetAt(0);// ?GetAt@CHString@@QBEGH@Z(long)
40         GetBuffer(0);// ?GetBuffer@CHString@@QAEPAGH@Z(long)
41         GetBufferSetLength(1);// ?GetBufferSetLength@CHString@@QAEPAGH@Z(long)
42         (void)*(volatile int*)GetData();// ?GetData@CHString@@IBEPAUCHStringData@@XZ()
43         GetLength();// ?GetLength@CHString@@QBEHXZ()
44         Init();// ?Init@CHString@@IAEXXZ()
45         IsEmpty();// ?IsEmpty@CHString@@QBEHXZ()
46         Left(1);// ?Left@CHString@@QBE?AV1@H@Z(long)
47         LoadStringW(1);// ?LoadStringW@CHString@@QAEHI@Z(long)
48         LoadStringW(1, NULL, 256);// ?LoadStringW@CHString@@IAEHIPAGI@Z(long wstr long)
49         LockBuffer();// ?LockBuffer@CHString@@QAEPAGXZ()
50         MakeLower();// ?MakeLower@CHString@@QAEXXZ()
51         MakeReverse();// ?MakeReverse@CHString@@QAEXXZ()
52         MakeUpper();// ?MakeUpper@CHString@@QAEXXZ()
53         Mid(12);// ?Mid@CHString@@QBE?AV1@H@Z(long)
54         Mid(12, 4);// ?Mid@CHString@@QBE?AV1@HH@Z(long long)
55         Release(NULL);// ?Release@CHString@@KGXPAUCHStringData@@@Z(ptr)
56         Release();// ?Release@CHString@@IAEXXZ()
57         ReleaseBuffer(); // ?ReleaseBuffer@CHString@@QAEXH@Z(long)
58         ReverseFind(L'a');// ?ReverseFind@CHString@@QBEHG@Z(long)
59         Right(2);// ?Right@CHString@@QBE?AV1@H@Z(long)
60         SafeStrlen(L"test");// ?SafeStrlen@CHString@@KGHPBG@Z(wstr)
61         SetAt(0, L'a');// ?SetAt@CHString@@QAEXHG@Z(long long)
62         SpanExcluding(L"test");// ?SpanExcluding@CHString@@QBE?AV1@PBG@Z(long wstr)
63         SpanIncluding(L"test");// ?SpanIncluding@CHString@@QBE?AV1@PBG@Z(long wstr)
64         TrimLeft();// ?TrimLeft@CHString@@QAEXXZ()
65         TrimRight();// ?TrimRight@CHString@@QAEXXZ()
66         UnlockBuffer();// ?UnlockBuffer@CHString@@QAEXXZ()
67 // ??BCHString@@QBEPBGXZ(ptr)
68 // ??YCHString@@QAEABV0@ABV0@@Z(ptr)
69 // ??YCHString@@QAEABV0@D@Z(long)
70 // ??YCHString@@QAEABV0@PBG@Z(wstr)
71 // ??YCHString@@QAEABV0@G@Z(long)
72 // ??4CHString@@QAEABV0@PAV0@@Z(ptr)
73 // ??4CHString@@QAEABV0@ABV0@@Z(ptr)
74 // ??4CHString@@QAEABV0@PBD@Z(str)
75 // ??4CHString@@QAEABV0@D@Z(long)
76 // ??4CHString@@QAEABV0@PBE@Z(str)
77 // ??4CHString@@QAEABV0@PBG@Z(wstr)
78 // ??4CHString@@QAEABV0@G@Z(long)
79 // ??ACHString@@QBEGH@Z(long)
80 // ??1CHString@@QAE@XZ()
81 // ??H@YG?AVCHString@@GABV0@@Z(long ptr)
82 // ??H@YG?AVCHString@@ABV0@G@Z(ptr long)
83 // ??H@YG?AVCHString@@ABV0@PBG@Z(ptr wstr)
84 // ??H@YG?AVCHString@@PBGABV0@@Z(wstr ptr)
85 // ??H@YG?AVCHString@@ABV0@0@Z(ptr ptr)
86 
87     }
88 };
89 
90 int
test()91 test()
92 {
93     CHString2 String;
94 
95     String.UseStuff();
96 
97     return 0;
98 }
99