Debug.Assert メソッド

定義

条件をチェックします。条件が false の場合、メッセージを出力し、コール スタックを示すメッセージ ボックスを表示します。Checks for a condition; if the condition is false, outputs messages and displays a message box that shows the call stack.

オーバーロード

Assert(Boolean)

条件をチェックします。条件が false の場合、呼び出し履歴を見せるメッセージ ボックスを表示します。Checks for a condition; if the condition is false, displays a message box that shows the call stack.

Assert(Boolean, String)

条件をチェックします。条件が false の場合、指定したメッセージを出力し、コール スタックを示すメッセージ ボックスを表示します。Checks for a condition; if the condition is false, outputs a specified message and displays a message box that shows the call stack.

Assert(Boolean, String, String)

条件をチェックします。条件が false の場合、指定した 2 つのメッセージを出力し、コール スタックを示すメッセージ ボックスを表示します。Checks for a condition; if the condition is false, outputs two specified messages and displays a message box that shows the call stack.

Assert(Boolean, String, String, Object[])

条件をチェックし、その条件が false の場合は、2 つのメッセージ (単純なメッセージと書式設定されたメッセージ) を出力し、呼び出し履歴を表示するメッセージ ボックスを表示します。Checks for a condition; if the condition is false, outputs two messages (simple and formatted) and displays a message box that shows the call stack.

Assert(Boolean)

条件をチェックします。条件が false の場合、呼び出し履歴を見せるメッセージ ボックスを表示します。Checks for a condition; if the condition is false, displays a message box that shows the call stack.

public:
 static void Assert(bool condition);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition);
[<System.Diagnostics.Conditional("DEBUG")>]
static member Assert : bool -> unit
Public Shared Sub Assert (condition As Boolean)

パラメーター

condition
Boolean

評価する条件式です。The conditional expression to evaluate. 条件が true の場合、エラー メッセージは送信されず、メッセージ ボックスは表示されません。If the condition is true, a failure message is not sent and the message box is not displayed.

属性

次の例では、配列のインデックスを作成し、何らかのアクションを実行してインデックスの値を設定した後、を呼び出して Assert インデックス値が有効であることを確認します。The following example creates an index for an array, performs some action to set the value of the index, and then calls Assert to confirm that the index value is valid. 有効でない場合は、 Assert 呼び出し履歴を出力します。If it is not valid, Assert outputs the call stack.

// Create a local value.
int index;

// Perform some action that sets the local value.
index = -40;

// Test that the local value is valid. 
#if defined(DEBUG)
Debug::Assert( index > -1 );
#endif
// Create an index for an array.
 int index;

 // Perform some action that sets the index.
 index = -40;

 // Test that the index value is valid.
 Debug.Assert(index > -1);
' Create an index for an array.
Dim index As Integer

' Perform some action that sets the index.
index = -40

' Test that the index value is valid. 
Debug.Assert((index > - 1))

注釈

既定では、 Debug.Assert メソッドはデバッグビルドでのみ機能します。By default, the Debug.Assert method works only in debug builds. Trace.Assertリリースビルドでアサーションを実行する場合は、メソッドを使用します。Use the Trace.Assert method if you want to do assertions in release builds. 詳細については、「マネージド コードのアサーション」を参照してください。For more information, see Assertions in Managed Code.

重要

これらの Assert メソッドは、Windows ストアアプリでは使用できません。The Assert methods are not available for Windows Store apps.

通常、 Assert(Boolean) メソッドは、プログラムの開発中に論理エラーを識別するために使用されます。Typically, the Assert(Boolean) method is used to identify logic errors during program development. Assert 条件を評価します。Assert evaluates the condition. 結果がの場合は false 、エラーメッセージをコレクションに送信し Listeners ます。If the result is false, it sends a failure message to the Listeners collection. この動作は、コレクションにを追加し TraceListener たり、コレクションから削除したりすることによってカスタマイズでき Listeners ます。You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

アプリケーションがユーザー インターフェイス モードで実行されているときは、ファイル番号と行番号を含む呼び出し履歴を示すメッセージ ボックスが表示されます。When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. メッセージボックスには、[ 中止]、[ 再試行]、および [ 無視] の3つのボタンがあります。The message box contains three buttons: Abort, Retry, and Ignore. [ 中止 ] ボタンをクリックすると、アプリケーションが終了します。Clicking the Abort button terminates the application. [ 再試行 ] をクリックすると、デバッガーでアプリケーションが実行されている場合はデバッガー内のコードに送信されます。デバッガーが起動していない場合は、デバッガーが開きます。Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. [ 無視 ] をクリックすると、コード内の次の命令が続きます。Clicking Ignore continues with the next instruction in the code.

注意

Windows 8.x ストアアプリはモーダルダイアログボックスをサポートしていないので、ユーザーインターフェイスモードと非ユーザーインターフェイスモードでの動作は同じになります。Windows 8.x Store apps do not support modal dialog boxes, so they behave the same in user interface mode and non-user interface mode. デバッグモードでは、メッセージがアクティブなトレースリスナーに書き込まれます。または、リリースモードではメッセージは書き込まれません。The message is written to the active trace listeners in debugging mode, or no message is written in release mode.

注意

メッセージボックスの表示は、の有無によって異なり DefaultTraceListener ます。The display of the message box depends on the presence of the DefaultTraceListener. DefaultTraceListenerがコレクションに含まれていない場合 Listeners 、メッセージボックスは表示されません。If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. は、 DefaultTraceListener < clear > < remove > 、または Clear プロパティ () でメソッドを呼び出すことによって削除でき Listeners System.Diagnostics.Trace.Listeners.Clear() ます。The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

DefaultTraceListenerアプリケーションの名前に対応する構成ファイル内のの動作を変更できます。You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. このファイルでは、assert メッセージボックスを有効または無効にしたり、プロパティを設定したりでき DefaultTraceListener.LogFileName ます。In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. 構成ファイルは次のように書式設定する必要があります。The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

こちらもご覧ください

適用対象

Assert(Boolean, String)

条件をチェックします。条件が false の場合、指定したメッセージを出力し、コール スタックを示すメッセージ ボックスを表示します。Checks for a condition; if the condition is false, outputs a specified message and displays a message box that shows the call stack.

public:
 static void Assert(bool condition, System::String ^ message);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string message);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string? message);
[<System.Diagnostics.Conditional("DEBUG")>]
static member Assert : bool * string -> unit
Public Shared Sub Assert (condition As Boolean, message As String)

パラメーター

condition
Boolean

評価する条件式です。The conditional expression to evaluate. 条件が true の場合、指定したメッセージは送信されず、メッセージ ボックスは表示されません。If the condition is true, the specified message is not sent and the message box is not displayed.

message
String

Listeners コレクションに送信するメッセージ。The message to send to the Listeners collection.

属性

次の例では、 type パラメーターが有効かどうかを確認します。The following example checks whether the type parameter is valid. がの場合 type null 、は Assert メッセージを出力します。If type is null, Assert outputs a message.

void MyMethod( Object^ obj, Type^ type )
{
   #if defined(DEBUG)
   Debug::Assert( type != nullptr, "Type paramater is null" );
   #endif
}
public static void MyMethod(Type type, Type baseType) {
    Debug.Assert(type != null, "Type parameter is null");

   // Perform some processing.
 }

Public Shared Sub MyMethod(type As Type, baseType As Type)
    Debug.Assert(Not (type Is Nothing), "Type parameter is null")
End Sub

注釈

既定では、 Debug.Assert メソッドはデバッグビルドでのみ機能します。By default, the Debug.Assert method works only in debug builds. Trace.Assertリリースビルドでアサーションを実行する場合は、メソッドを使用します。Use the Trace.Assert method if you want to do assertions in release builds. 詳細については、「マネージド コードのアサーション」を参照してください。For more information, see Assertions in Managed Code.

通常、 Assert メソッドは、プログラムの開発中に論理エラーを識別するために使用されます。Typically, the Assert method is used to identify logic errors during program development. Assert 条件を評価します。Assert evaluates the condition. 結果がの場合は false 、指定された診断メッセージをコレクションに送信し Listeners ます。If the result is false, it sends the specified diagnostic message to the Listeners collection. この動作は、コレクションにを追加し TraceListener たり、コレクションから削除したりすることによってカスタマイズでき Listeners ます。You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

アプリケーションがユーザー インターフェイス モードで実行されているときは、ファイル番号と行番号を含む呼び出し履歴を示すメッセージ ボックスが表示されます。When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. メッセージボックスには、[ 中止]、[ 再試行]、および [ 無視] の3つのボタンがあります。The message box contains three buttons: Abort, Retry, and Ignore. [ 中止 ] ボタンをクリックすると、アプリケーションが終了します。Clicking the Abort button terminates the application. [ 再試行 ] をクリックすると、デバッガーでアプリケーションが実行されている場合はデバッガー内のコードに送信されます。デバッガーが起動していない場合は、デバッガーが開きます。Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. [ 無視 ] をクリックすると、コード内の次の命令が続きます。Clicking Ignore continues with the next instruction in the code.

注意

メッセージボックスの表示は、の有無によって異なり DefaultTraceListener ます。The display of the message box depends on the presence of the DefaultTraceListener. DefaultTraceListenerがコレクションに含まれていない場合 Listeners 、メッセージボックスは表示されません。If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. は、 DefaultTraceListener < clear > < remove > 、または Clear プロパティ () でメソッドを呼び出すことによって削除でき Listeners System.Diagnostics.Trace.Listeners.Clear() ます。The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

DefaultTraceListenerアプリケーションの名前に対応する構成ファイル内のの動作を変更できます。You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. このファイルでは、assert メッセージボックスを有効または無効にしたり、プロパティを設定したりでき DefaultTraceListener.LogFileName ます。In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. 構成ファイルは次のように書式設定する必要があります。The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

こちらもご覧ください

適用対象

Assert(Boolean, String, String)

条件をチェックします。条件が false の場合、指定した 2 つのメッセージを出力し、コール スタックを示すメッセージ ボックスを表示します。Checks for a condition; if the condition is false, outputs two specified messages and displays a message box that shows the call stack.

public:
 static void Assert(bool condition, System::String ^ message, System::String ^ detailMessage);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string message, string detailMessage);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string? message, string? detailMessage);
[<System.Diagnostics.Conditional("DEBUG")>]
static member Assert : bool * string * string -> unit
static member Assert : bool * string * string -> unit
Public Shared Sub Assert (condition As Boolean, message As String, detailMessage As String)

パラメーター

condition
Boolean

評価する条件式です。The conditional expression to evaluate. 条件が true の場合、指定したメッセージは送信されず、メッセージ ボックスは表示されません。If the condition is true, the specified messages are not sent and the message box is not displayed.

message
String

Listeners コレクションに送信するメッセージ。The message to send to the Listeners collection.

detailMessage
String

Listeners コレクションに送信する詳細なメッセージ。The detailed message to send to the Listeners collection.

属性

次の例では、 type パラメーターが有効かどうかを確認します。The following example checks whether the type parameter is valid. がの場合 type null 、は Assert 2 つのメッセージを出力します。If type is null, Assert outputs two messages.

void MyMethod( Object^ obj, Type^ type )
{
   #if defined(DEBUG)
   Debug::Assert( type != nullptr, "Type paramater is null", "Can't get object for null type" );
   #endif
}
public static void MyMethod(Type type, Type baseType) {
    Debug.Assert(type != null, "Type parameter is null",
       "Can't get object for null type");

   // Perform some processing.
 }

Public Shared Sub MyMethod(type As Type, baseType As Type)
    Debug.Assert( Not (type Is Nothing), "Type parameter is null", "Can't get object for null type")
    ' Perform some processing.
End Sub

注釈

既定では、 Debug.Assert メソッドはデバッグビルドでのみ機能します。By default, the Debug.Assert method works only in debug builds. Trace.Assertリリースビルドでアサーションを実行する場合は、メソッドを使用します。Use the Trace.Assert method if you want to do assertions in release builds. 詳細については、「マネージド コードのアサーション」を参照してください。For more information, see Assertions in Managed Code.

通常、 Assert(Boolean, String, String) メソッドは、プログラムの開発中に論理エラーを識別するために使用されます。Typically, the Assert(Boolean, String, String) method is used to identify logic errors during program development. Assert 条件を評価します。Assert evaluates the condition. 結果がの場合は false 、指定された診断メッセージと詳細メッセージをコレクションに送信し Listeners ます。If the result is false, it sends the specified diagnostic message and detailed message to the Listeners collection. この動作は、コレクションにを追加し TraceListener たり、コレクションから削除したりすることによってカスタマイズでき Listeners ます。You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

アプリケーションがユーザー インターフェイス モードで実行されているときは、ファイル番号と行番号を含む呼び出し履歴を示すメッセージ ボックスが表示されます。When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. メッセージボックスには、[ 中止]、[ 再試行]、および [ 無視] の3つのボタンがあります。The message box contains three buttons: Abort, Retry, and Ignore. [ 中止 ] ボタンをクリックすると、アプリケーションが終了します。Clicking the Abort button terminates the application. [ 再試行 ] をクリックすると、デバッガーでアプリケーションが実行されている場合はデバッガー内のコードに送信されます。デバッガーが起動していない場合は、デバッガーが開きます。Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. [ 無視 ] をクリックすると、コード内の次の命令が続きます。Clicking Ignore continues with the next instruction in the code.

注意

メッセージボックスの表示は、の有無によって異なり DefaultTraceListener ます。The display of the message box depends on the presence of the DefaultTraceListener. DefaultTraceListenerがコレクションに含まれていない場合 Listeners 、メッセージボックスは表示されません。If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. は、 DefaultTraceListener < clear > < remove > 、または Clear プロパティ () でメソッドを呼び出すことによって削除でき Listeners System.Diagnostics.Trace.Listeners.Clear() ます。The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

DefaultTraceListenerアプリケーションの名前に対応する構成ファイル内のの動作を変更できます。You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. このファイルでは、assert メッセージボックスを有効または無効にしたり、プロパティを設定したりでき DefaultTraceListener.LogFileName ます。In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. 構成ファイルは次のように書式設定する必要があります。The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

こちらもご覧ください

適用対象

Assert(Boolean, String, String, Object[])

条件をチェックし、その条件が false の場合は、2 つのメッセージ (単純なメッセージと書式設定されたメッセージ) を出力し、呼び出し履歴を表示するメッセージ ボックスを表示します。Checks for a condition; if the condition is false, outputs two messages (simple and formatted) and displays a message box that shows the call stack.

public:
 static void Assert(bool condition, System::String ^ message, System::String ^ detailMessageFormat, ... cli::array <System::Object ^> ^ args);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string message, string detailMessageFormat, params object[] args);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string? message, string detailMessageFormat, params object?[] args);
[<System.Diagnostics.Conditional("DEBUG")>]
static member Assert : bool * string * string * obj[] -> unit
static member Assert : bool * string * string * obj[] -> unit
Public Shared Sub Assert (condition As Boolean, message As String, detailMessageFormat As String, ParamArray args As Object())

パラメーター

condition
Boolean

評価する条件式です。The conditional expression to evaluate. 条件が true の場合、指定したメッセージは送信されず、メッセージ ボックスは表示されません。If the condition is true, the specified messages are not sent and the message box is not displayed.

message
String

Listeners コレクションに送信するメッセージ。The message to send to the Listeners collection.

detailMessageFormat
String

Listeners コレクションに送信する複合書式指定文字列。The composite format string to send to the Listeners collection. このメッセージのテキストには、args 配列内のオブジェクトに対応する 0 個以上の書式項目を含めることができます。This message contains text intermixed with zero or more format items, which correspond to objects in the args array.

args
Object[]

0 個以上の書式設定対象オブジェクトを含んだオブジェクト配列。An object array that contains zero or more objects to format.

属性

注釈

このメソッドは、 .net の複合書式指定機能 を使用して、オブジェクトの値をテキスト表現に変換し、その表現を文字列に埋め込みます。This method uses the .NET composite formatting feature to convert the value of an object to its text representation and embed that representation in a string. 結果の文字列がコレクションに送信され Listeners ます。The resulting string is sent to the Listeners collection.

既定では、 Debug.Assert メソッドはデバッグビルドでのみ機能します。By default, the Debug.Assert method works only in debug builds. Trace.Assertリリースビルドでアサーションを実行する場合は、メソッドを使用します。Use the Trace.Assert method if you want to do assertions in release builds. 詳細については、「マネージド コードのアサーション」を参照してください。For more information, see Assertions in Managed Code.

通常、 Assert(Boolean, String, String, Object[]) メソッドは、プログラムの開発中に論理エラーを識別するために使用されます。Typically, the Assert(Boolean, String, String, Object[]) method is used to identify logic errors during program development. Assert 条件を評価します。Assert evaluates the condition. 結果がの場合 falseString.Format(String, Object[]) メソッドが呼び出され、 detailMessageFormat 文字列と args 配列がパラメーターとして渡されます。If the result is false, The String.Format(String, Object[]) method is called and the detailMessageFormat string and args array are passed in as parameters. Assert(Boolean, String, String, Object[]) 次に、指定したテキストメッセージと書式設定されたテキストメッセージをコレクションに送信し Listeners ます。Assert(Boolean, String, String, Object[]) then sends the specified text message and the formatted text message to the Listeners collection. この動作は、コレクションにを追加し TraceListener たり、コレクションから削除したりすることによってカスタマイズでき Listeners ます。You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

アプリケーションがユーザー インターフェイス モードで実行されているときは、ファイル番号と行番号を含む呼び出し履歴を示すメッセージ ボックスが表示されます。When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. メッセージボックスには、[ 中止]、[ 再試行]、および [ 無視] の3つのボタンがあります。The message box contains three buttons: Abort, Retry, and Ignore. [ 中止 ] ボタンをクリックすると、アプリケーションが終了します。Clicking the Abort button terminates the application. [ 再試行 ] をクリックすると、デバッガーでアプリケーションが実行されている場合はデバッガー内のコードに送信されます。デバッガーが起動していない場合は、デバッガーが開きます。Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. [ 無視 ] をクリックすると、コード内の次の命令が続きます。Clicking Ignore continues with the next instruction in the code.

注意

メッセージボックスの表示は、の存在に依存し DefaultTraceListener ます。The display of the message box is dependent on the presence of the DefaultTraceListener. DefaultTraceListenerがコレクションに含まれていない場合 Listeners 、メッセージボックスは表示されません。If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. は、 DefaultTraceListener < clear > < remove > 、または Clear プロパティ () でメソッドを呼び出すことによって削除でき Listeners System.Diagnostics.Trace.Listeners.Clear() ます。The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

DefaultTraceListenerアプリケーションの名前に対応する構成ファイル内のの動作を変更できます。You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. このファイルでは、assert メッセージボックスを有効または無効にしたり、プロパティを設定したりでき DefaultTraceListener.LogFileName ます。In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. 構成ファイルは次のように書式設定する必要があります。The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

適用対象