CodeGuardでRTLを使う場合[JAPAN]

Posted by on in Tools

 

 

CodeGuardとは

bcc32 (C++Builder 10.2 Tokyo )で構文規則に違反していないためにコンパイラでは検出されないエラーを通知します。

実行時ライブラリを追跡とマルチスレッド アプリケーションを完全にサポート。

機能
メモリおよびリソースの使用状況確認
関数呼び出しの検証

利用方法

プロジェクトオプションから|C++コンパイラ|デバッグ|
CodeGuardを有効にする = true すると設定されます。

void __fastcall TForm2::Button1Click(TObject *Sender)
{
    int* i = new int[1000];
}

RTLを利用する場合

RTLを利用する場合プロジェクトオプション内の
C++リンカ|動的RTLとリンクする = false 
実行じパッケージ|実行時パッケージを使ってリンク = false
上記の設定を行う必要があります。

TObject*をクリエイトする

void __fastcall TForm2::Button1Click(TObject *Sender)
{
    TObject* o = new TObject();
}

動的RTLとリンクする = false と実行時パッケージを使ってリンク = false を設定する事で、下記の確認ができました。
「 The memory block (0x02723AC0) [size: 8 bytes] was allocated with SysGetMem」



About
Gold User, No rank,
Delphi / C++Builder blogger

Comments

Check out more tips and tricks in this development video: