Alternate e697dbe9c5997e35395fe158628dd8c5209481da
for Visual Studio 2022 and Windows 11.
読み取り中…
検索中…
一致する文字列を見つけられません
TStringMemoryLeakCheck.cpp
[詳解]
1
5
6#include "pch.h"
8
9using namespace LeakCheck;
10
12{
13
14}
15
17{
18
19}
20
22{
23 return TRUE;
24}
25
27{
28 this->DoAction1 ();
29 this->DoAction2 ();
30 this->DoAction3 ();
31 this->DoAction4 ();
32
33 return TRUE;
34}
35
37{
38 OutputDebugString (_T ("TStringMemoryLeakCheck::DoAction1()\n"));
40
41 alt::TString string1;
42 alt::TString string2 (_T ("Check_TString01"));
43 alt::TString string3 (string2);
44 alt::TString string4 (MAX_PATH);
45
46 return TRUE;
47}
48
50{
51 OutputDebugString (_T ("TStringMemoryLeakCheck::DoAction2()\n"));
53
54 alt::TString* string1 = new alt::TString ();
55 alt::TString* string2 = new alt::TString (_T ("Check_TString02"));
56 alt::TString* string3 = new alt::TString (*string2);
57 alt::TString* string4 = new alt::TString (MAX_PATH);
58
59 delete string1;
60 delete string2;
61 delete string3;
62 delete string4;
63
64 return TRUE;
65}
66
68{
69 OutputDebugString (_T ("TStringMemoryLeakCheck::DoAction3()\n"));
71
72 alt::TString string1;
73 alt::TString string2;
74
75 ASSERT (string1 == nullptr);
76 ASSERT (string1 == string2);
77
78 alt::TString string3 (_T ("string3"));
79 alt::TString string4 (_T ("string4"));
80
81 ASSERT (string3 == _T ("string3"));
82 ASSERT (string3 != string4);
83
84 return TRUE;
85}
86
88{
89 OutputDebugString (_T ("TStringMemoryLeakCheck::DoAction4()\n"));
91
92 for (int i = 0; i < 100; i++)
93 {
94 alt::TString message1;
95 message1.Format (_T ("TEST %d\n"), i);
96 }
97
98 alt::TString before = _T ("TEST");
99 alt::TString after = _T ("SAMPLE");
100
101 for (int i = 0; i < 100; i++)
102 {
103 alt::TString message2;
104 message2.Format (_T ("TEST %d"), i);
105 message2.Replace (before, after);
106 }
107
108 for (int i = 0; i < 100; i++)
109 {
110 alt::TString message2;
111 message2.Format (_T ("TEST TEST TEST TEST TEST %d"), i);
112 message2.ReplaceAll (before, after);
113 }
114
115
116 return TRUE;
117}
#define CRT_SET_DEBUG_FLAG
Definition: pch.h:23
TStringのメモリーリークを確認します。
プリコンパイル済みヘッダー ファイルです。
virtual BOOL Init()
初期化処理
virtual BOOL DoAction()
メモリーリーク調査
virtual ~TStringMemoryLeakCheck()
デストラクタ
文字列に関するWindowsAPIを集約したクラス
Definition: TString.h:17
TString &APIENTRY Format(LPCTSTR format,...)
フォーマットに従ってパラメータを文字列化します。
Definition: TString.cpp:333
TString APIENTRY Replace(TString &charsBefore, TString &charsAfter)
文字列を置換します。
Definition: TString.cpp:233
TString APIENTRY ReplaceAll(TString &charsBefore, TString &charsAfter)
文字列を置換します。
Definition: TString.cpp:246