ArrayTypeMismatchException コンストラクター
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。
オーバーロード
ArrayTypeMismatchException() |
ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。 |
ArrayTypeMismatchException(String) |
指定したエラー メッセージを使用して、ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。 |
ArrayTypeMismatchException(SerializationInfo, StreamingContext) |
古い.
シリアル化したデータを使用して、ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。 |
ArrayTypeMismatchException(String, Exception) |
指定したエラー メッセージおよびこの例外の原因となった内部例外への参照を使用して、ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。 |
ArrayTypeMismatchException()
ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。
public:
ArrayTypeMismatchException();
public ArrayTypeMismatchException ();
Public Sub New ()
例
次の例では、 クラスの ArrayTypeMismatchException() コンストラクターを ArrayTypeMismatchException 示します。 これには、2 つの配列を引数として受け取り、2 つの配列が同じ型であるかどうかを確認する関数が含まれています。 配列の型が異なる場合は、新 ArrayTypeMismatchException しい がスローされ、呼び出し元のメソッドでキャッチされます。
using namespace System;
public ref class ArrayTypeMisMatchConst
{
public:
void CopyArray( Array^ myArray, Array^ myArray1 )
{
String^ typeArray1 = myArray->GetType()->ToString();
String^ typeArray2 = myArray1->GetType()->ToString();
// Check whether the two arrays are of same type or not.
if ( typeArray1 == typeArray2 )
{
// Copy the values from one array to another.
myArray->SetValue( String::Concat( "Name: ", myArray1->GetValue( 0 )->ToString() ), 0 );
myArray->SetValue( String::Concat( "Name: ", myArray1->GetValue( 1 )->ToString() ), 1 );
}
else
{
// Throw an exception of type 'ArrayTypeMismatchException'.
throw gcnew ArrayTypeMismatchException;
}
}
};
int main()
{
try
{
array<String^>^myStringArray = gcnew array<String^>(2);
myStringArray->SetValue( "Jones", 0 );
myStringArray->SetValue( "John", 1 );
array<Int32>^myIntArray = gcnew array<Int32>(2);
ArrayTypeMisMatchConst^ myArrayType = gcnew ArrayTypeMisMatchConst;
myArrayType->CopyArray( myStringArray, myIntArray );
}
catch ( ArrayTypeMismatchException^ e )
{
Console::WriteLine( "The Exception is : {0}", e );
}
}
using System;
public class ArrayTypeMismatchConst
{
public void CopyArray(Array myArray, Array myArray1)
{
string typeArray1 = myArray.GetType().ToString();
string typeArray2 = myArray1.GetType().ToString();
// Check whether the two arrays are of same type or not.
if (typeArray1 == typeArray2)
{
// Copy the values from one array to another.
myArray.SetValue("Name: " + myArray1.GetValue(0), 0);
myArray.SetValue("Name: " + myArray1.GetValue(1), 1);
}
else
{
// Throw an exception of type 'ArrayTypeMismatchException'.
throw new ArrayTypeMismatchException();
}
}
static void Main()
{
try
{
string[] myStringArray = new string[2];
myStringArray.SetValue("Jones", 0);
myStringArray.SetValue("John", 1);
int[] myIntArray = new int[2];
ArrayTypeMismatchConst myArrayType = new();
myArrayType.CopyArray(myStringArray, myIntArray);
}
catch (ArrayTypeMismatchException e)
{
Console.WriteLine("The Exception is :" + e);
}
}
}
open System
let copyArray (myArray: Array) (myArray1: Array) =
let typeArray1 = myArray.GetType() |> string
let typeArray2 = myArray1.GetType() |> string
// Check whether the two arrays are of same type or not.
if typeArray1 = typeArray2 then
// Copy the values from one array to another.
myArray.SetValue($"Name: {myArray1.GetValue 0}", 0)
myArray.SetValue($"Name: {myArray1.GetValue 1}", 1)
else
// Throw an exception of type 'ArrayTypeMismatchException'.
raise (ArrayTypeMismatchException())
try
let myStringArray = [| "Jones"; "John" |]
let myIntArray = Array.zeroCreate<int> 2
copyArray myStringArray myIntArray
with :? ArrayTypeMismatchException as e ->
printfn $"The Exception is: {e}"
Public Class ArrayTypeMisMatchConst
Public Sub CopyArray(myArray As Array, myArray1 As Array)
Dim typeArray1 As String = myArray.GetType().ToString()
Dim typeArray2 As String = myArray1.GetType().ToString()
' Check whether the two arrays are of same type or not.
If typeArray1 = typeArray2 Then
' Copy the values from one array to another.
myArray.SetValue("Name: " + myArray1.GetValue(0), 0)
myArray.SetValue("Name: " + myArray1.GetValue(1), 1)
Else
' Throw an exception of type 'ArrayTypeMismatchException'.
Throw New ArrayTypeMismatchException()
End If
End Sub
Shared Sub Main()
Try
Dim myStringArray(1) As String
myStringArray.SetValue("Jones", 0)
myStringArray.SetValue("John", 1)
Dim myIntArray(1) As Integer
Dim myArrayType As New ArrayTypeMisMatchConst()
myArrayType.CopyArray(myStringArray, myIntArray)
Catch e As ArrayTypeMismatchException
Console.WriteLine("The Exception is :" + e.ToString())
End Try
End Sub
End Class
注釈
このコンストラクターは、新しいインスタンスの プロパティを、"ソース配列型をコピー先の配列型に割り当てることができない" などのエラーを説明するシステム指定のメッセージに初期化 Message します。このメッセージでは、現在のシステム カルチャが考慮されます。
次の表に、ArrayTypeMismatchException のインスタンスに対するプロパティの初期値を示します。
プロパティ | 値 |
---|---|
InnerException | null 参照 (Visual Basic の場合は Nothing )。 |
Message | ローカライズされたエラー メッセージ文字列。 |
適用対象
ArrayTypeMismatchException(String)
指定したエラー メッセージを使用して、ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。
public:
ArrayTypeMismatchException(System::String ^ message);
public ArrayTypeMismatchException (string message);
public ArrayTypeMismatchException (string? message);
new ArrayTypeMismatchException : string -> ArrayTypeMismatchException
Public Sub New (message As String)
パラメーター
例
次の例では、 クラスの ArrayTypeMismatchException(String) コンストラクターを ArrayTypeMismatchException 示します。 これには、2 つの配列を引数として受け取り、2 つの配列が同じ型であるかどうかを確認する関数が含まれています。 配列の型が異なる場合は、新 ArrayTypeMismatchException しい がスローされ、呼び出し元のメソッドでキャッチされます。
using namespace System;
public ref class ArrayTypeMisMatchConst
{
public:
void CopyArray( Array^ myArray, Array^ myArray1 )
{
String^ typeArray1 = myArray->GetType()->ToString();
String^ typeArray2 = myArray1->GetType()->ToString();
// Check whether the two arrays are of same type or not.
if ( typeArray1 == typeArray2 )
{
// Copies the values from one array to another.
myArray->SetValue( String::Concat( "Name: ", myArray1->GetValue( 0 )->ToString() ), 0 );
myArray->SetValue( String::Concat( "Name: ", myArray1->GetValue( 1 )->ToString() ), 1 );
}
else
{
// Throw an exception of type 'ArrayTypeMismatchException' with a message String* as parameter.
throw gcnew ArrayTypeMismatchException( "The Source and destination arrays are not of same type." );
}
}
};
int main()
{
try
{
array<String^>^myStringArray = gcnew array<String^>(2);
myStringArray->SetValue( "Jones", 0 );
myStringArray->SetValue( "John", 1 );
array<Int32>^myIntArray = gcnew array<Int32>(2);
ArrayTypeMisMatchConst^ myArrayType = gcnew ArrayTypeMisMatchConst;
myArrayType->CopyArray( myStringArray, myIntArray );
}
catch ( ArrayTypeMismatchException^ e )
{
Console::WriteLine( "The Exception Message is : {0}", e->Message );
}
}
using System;
public class ArrayTypeMismatchConst2
{
public void CopyArray(Array myArray, Array myArray1)
{
string typeArray1 = myArray.GetType().ToString();
string typeArray2 = myArray1.GetType().ToString();
// Check whether the two arrays are of same type or not.
if (typeArray1 == typeArray2)
{
// Copies the values from one array to another.
myArray.SetValue("Name: " + myArray1.GetValue(0), 0);
myArray.SetValue("Name: " + myArray1.GetValue(1), 1);
}
else
{
// Throw an exception of type 'ArrayTypeMismatchException' with a message string as parameter.
throw new ArrayTypeMismatchException("The Source and destination arrays are not of same type.");
}
}
static void Main()
{
try
{
string[] myStringArray = new string[2];
myStringArray.SetValue("Jones", 0);
myStringArray.SetValue("John", 1);
int[] myIntArray = new int[2];
ArrayTypeMismatchConst2 myArrayType = new();
myArrayType.CopyArray(myStringArray, myIntArray);
}
catch (ArrayTypeMismatchException e)
{
Console.WriteLine("The Exception Message is : " + e.Message);
}
}
}
open System
let copyArray (myArray: Array) (myArray1: Array) =
let typeArray1 = myArray.GetType() |> string
let typeArray2 = myArray1.GetType() |> string
// Check whether the two arrays are of same type or not.
if typeArray1 = typeArray2 then
// Copy the values from one array to another.
myArray.SetValue($"Name: {myArray1.GetValue 0}", 0)
myArray.SetValue($"Name: {myArray1.GetValue 1}", 1)
else
// Throw an exception of type 'ArrayTypeMismatchException' with a message string as parameter.
raise (ArrayTypeMismatchException "The Source and destination arrays are not of same type.")
try
let myStringArray = [| "Jones"; "John" |]
let myIntArray = Array.zeroCreate<int> 2
copyArray myStringArray myIntArray
with :? ArrayTypeMismatchException as e ->
printfn $"The Exception is: {e}"
Public Class ArrayTypeMisMatchConst
Public Sub CopyArray(myArray As Array, myArray1 As Array)
Dim typeArray1 As String = myArray.GetType().ToString()
Dim typeArray2 As String = myArray1.GetType().ToString()
' Check whether the two arrays are of same type or not.
If typeArray1 = typeArray2 Then
' Copies the values from one array to another.
myArray.SetValue("Name: " + myArray1.GetValue(0), 0)
myArray.SetValue("Name: " + myArray1.GetValue(1), 1)
Else
' Throw an exception of type 'ArrayTypeMismatchException' with a message string as parameter.
Throw New ArrayTypeMismatchException("The Source and destination arrays are not of same type.")
End If
End Sub
Shared Sub Main()
Try
Dim myStringArray(1) As String
myStringArray.SetValue("Jones", 0)
myStringArray.SetValue("John", 1)
Dim myIntArray(1) As Integer
Dim myArrayType As New ArrayTypeMisMatchConst()
myArrayType.CopyArray(myStringArray, myIntArray)
Catch e As ArrayTypeMismatchException
Console.WriteLine(("The Exception Message is : " + e.Message))
End Try
End Sub
End Class
注釈
message
パラメーターの内容は、ユーザーが理解できる内容にします。 このコンストラクターの呼び出し元は、この文字列が現在のシステム環境向けにローカライズされていることを確認する必要があります。
次の表に、ArrayTypeMismatchException のインスタンスに対するプロパティの初期値を示します。
プロパティ | 値 |
---|---|
InnerException | null 参照 (Visual Basic の場合は Nothing )。 |
Message | エラー メッセージ文字列。 |
適用対象
ArrayTypeMismatchException(SerializationInfo, StreamingContext)
注意事項
This API supports obsolete formatter-based serialization. It should not be called or extended by application code.
シリアル化したデータを使用して、ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。
protected:
ArrayTypeMismatchException(System::Runtime::Serialization::SerializationInfo ^ info, System::Runtime::Serialization::StreamingContext context);
protected ArrayTypeMismatchException (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected ArrayTypeMismatchException (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
new ArrayTypeMismatchException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> ArrayTypeMismatchException
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new ArrayTypeMismatchException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> ArrayTypeMismatchException
Protected Sub New (info As SerializationInfo, context As StreamingContext)
パラメーター
- info
- SerializationInfo
シリアル化されたオブジェクト データを保持するオブジェクト。
- context
- StreamingContext
転送元または転送先に関するコンテキスト情報。
- 属性
注釈
このコンストラクターは、シリアル化解除の際に呼び出されて、ストリームで送信された例外オブジェクトを再構成します。 詳細については、「 XML および SOAP のシリアル化」を参照してください。
こちらもご覧ください
適用対象
ArrayTypeMismatchException(String, Exception)
指定したエラー メッセージおよびこの例外の原因となった内部例外への参照を使用して、ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。
public:
ArrayTypeMismatchException(System::String ^ message, Exception ^ innerException);
public ArrayTypeMismatchException (string message, Exception innerException);
public ArrayTypeMismatchException (string? message, Exception? innerException);
new ArrayTypeMismatchException : string * Exception -> ArrayTypeMismatchException
Public Sub New (message As String, innerException As Exception)
パラメーター
- message
- String
例外の原因を説明するエラー メッセージ。
- innerException
- Exception
現在の例外の原因となった例外。
innerException
パラメーターが null 参照でない場合は、内部例外を処理する catch
ブロックで現在の例外が発生します。
例
次のコード例は、 クラスの ArrayTypeMismatchException コンストラクターを ArrayTypeMismatchException 示しています。 2 つの配列を引数として受け取り、2 つの配列が同じ型であるかどうかを確認する関数が含まれています。 配列の型が異なる場合は、新 ArrayTypeMismatchException しい がスローされ、呼び出し元のメソッドでキャッチされます。
using namespace System;
public ref class ArrayTypeMisMatchConst
{
public:
void CopyArray( Array^ myArray, Array^ myArray1 )
{
try
{
// Copies the value of one array into another array.
myArray->SetValue( myArray1->GetValue( 0 ), 0 );
myArray->SetValue( myArray1->GetValue( 1 ), 1 );
}
catch ( Exception^ e )
{
// Throw an exception of with a message and innerexception.
throw gcnew ArrayTypeMismatchException( "The Source and destination arrays are of not same type.",e );
}
}
};
int main()
{
try
{
array<String^>^myStringArray = gcnew array<String^>(2);
myStringArray->SetValue( "Jones", 0 );
myStringArray->SetValue( "John", 1 );
array<Int32>^myIntArray = gcnew array<Int32>(2);
ArrayTypeMisMatchConst^ myArrayType = gcnew ArrayTypeMisMatchConst;
myArrayType->CopyArray( myStringArray, myIntArray );
}
catch ( ArrayTypeMismatchException^ e )
{
Console::WriteLine( "The Exception Message is : {0}", e->Message );
Console::WriteLine( "The Inner exception is : {0}", e->InnerException );
}
}
using System;
public class ArrayTypeMismatchConst3
{
public void CopyArray(Array myArray, Array myArray1)
{
try
{
// Copies the value of one array into another array.
myArray.SetValue(myArray1.GetValue(0), 0);
myArray.SetValue(myArray1.GetValue(1), 1);
}
catch (Exception e)
{
// Throw an exception of with a message and innerexception.
throw new ArrayTypeMismatchException("The Source and destination arrays are of not same type.", e);
}
}
static void Main()
{
try
{
string[] myStringArray = new string[2];
myStringArray.SetValue("Jones", 0);
myStringArray.SetValue("John", 1);
int[] myIntArray = new int[2];
ArrayTypeMismatchConst3 myArrayType = new();
myArrayType.CopyArray(myStringArray, myIntArray);
}
catch (ArrayTypeMismatchException e)
{
Console.WriteLine("The Exception Message is : " + e.Message);
Console.WriteLine("The Inner exception is :" + e.InnerException);
}
}
}
open System
let copyArray (myArray: Array) (myArray1: Array) =
try
// Copies the value of one array into another array.
myArray.SetValue(myArray1.GetValue 0, 0)
myArray.SetValue(myArray1.GetValue 1, 1)
with e ->
// Throw an exception of with a message and innerexception.
raise (ArrayTypeMismatchException("The Source and destination arrays are of not same type.", e))
try
let myStringArray = [| "Jones"; "John" |]
let myIntArray = Array.zeroCreate<int> 2
copyArray myStringArray myIntArray
with :? ArrayTypeMismatchException as e ->
printfn $"The Exception Message is : {e.Message}"
printfn $"The Inner exception is: {e.InnerException}"
Public Class ArrayTypeMisMatchConst
Public Sub CopyArray(myArray As Array, myArray1 As Array)
Try
' Copies the value of one array into another array.
myArray.SetValue(myArray1.GetValue(0), 0)
myArray.SetValue(myArray1.GetValue(1), 1)
Catch e As Exception
' Throw an exception of type 'ArrayTypeMismatchException' with a message and innerexception.
Throw New ArrayTypeMismatchException("The Source and destination arrays are of not same type", e)
End Try
End Sub
Shared Sub Main()
Try
Dim myStringArray(1) As String
myStringArray.SetValue("Jones", 0)
myStringArray.SetValue("John", 1)
Dim myIntArray(1) As Integer
Dim myArrayType As New ArrayTypeMisMatchConst()
myArrayType.CopyArray(myStringArray, myIntArray)
Catch e As ArrayTypeMismatchException
Console.WriteLine("The Exception Message is : " + e.Message)
Console.WriteLine("The Inner exception is :" + e.InnerException.ToString())
End Try
End Sub
End Class
注釈
前の例外の直接の結果としてスローされる例外については、InnerException プロパティに、前の例外への参照を含める必要があります。
InnerException プロパティは、コンストラクターに渡されたものと同じ値を返します。Nothing
プロパティによって内部例外値がコンストラクターに渡されなかった場合は、null 参照 (Visual Basic の場合は InnerException) を返します。
次の表に、ArrayTypeMismatchException のインスタンスに対するプロパティの初期値を示します。
プロパティ | [値] |
---|---|
InnerException | 内部例外の参照。 |
Message | エラー メッセージ文字列。 |
こちらもご覧ください
適用対象
.NET