ArrayTypeMismatchException クラスの新しいインスタンスを初期化します。
名前空間: System
アセンブリ: mscorlib (mscorlib.dll 内)
構文
'宣言
Public Sub New
'使用
Dim instance As New ArrayTypeMismatchException
public ArrayTypeMismatchException ()
public:
ArrayTypeMismatchException ()
public ArrayTypeMismatchException ()
public function ArrayTypeMismatchException ()
解説
このコンストラクタは、新しいインスタンスの Message プロパティを初期化し、その値として "ソース配列の型をターゲット配列の型に割り当てることはできません" などのエラーを説明するシステム提供のメッセージを指定します。このメッセージは、システムの現在のカルチャを考慮して指定します。
ArrayTypeMismatchException のインスタンスの初期プロパティ値を次の表に示します。
プロパティ |
値 |
---|---|
null 参照 (Visual Basic の場合は Nothing)。 |
|
Message |
ローカライズされたエラー メッセージ文字列。 |
使用例
ArrayTypeMismatchException クラスの ArrayTypeMismatchException() コンストラクタの例を次に示します。このコンストラクタには、2 つの配列を引数として使用し、2 つの配列が同じ種類であるかどうかを確認する関数が含まれています。2 つの配列の種類が異なる場合は、新しい ArrayTypeMismatchException がスローされ、呼び出し元のメソッドでキャッチされます。
Imports System
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 'CopyArray
Shared Sub Main()
Try
Dim myStringArray(2) As String
myStringArray.SetValue("Jones", 0)
myStringArray.SetValue("John", 1)
Dim myIntArray(2) 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 'Main
End Class 'ArrayTypeMisMatchConst
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 ArrayTypeMisMatchConst();
myArrayType.CopyArray(myStringArray,myIntArray);
}
catch(ArrayTypeMismatchException e)
{
Console.WriteLine("The Exception is :"+e);
}
}
}
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 );
}
}
import 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.Equals(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();
}
} //CopyArray
public static void main(String[] args)
{
try {
String myStringArray[] = new String[2];
myStringArray.SetValue("Jones", 0);
myStringArray.SetValue("John", 1);
int myIntArray[] = new int[2];
ArrayTypeMisMatchConst myArrayType = new ArrayTypeMisMatchConst();
myArrayType.CopyArray(myStringArray, myIntArray);
}
catch (ArrayTypeMismatchException e) {
Console.WriteLine("The Exception is :" + e);
}
} //main
} //ArrayTypeMisMatchConst
プラットフォーム
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 2.0、1.1、1.0
.NET Compact Framework
サポート対象 : 2.0、1.0
参照
関連項目
ArrayTypeMismatchException クラス
ArrayTypeMismatchException メンバ
System 名前空間