私は現在 C# クラスを使用しています。このクラスでは、プライマリ コードからエラー処理を取り出し、すべてのエラー処理と別のクラスのすべての整数のデータ解析を構築しようとしていますが、問題は 1 つの変数しか返せないことです。 .
「真/偽」(bool) と、あるクラスから別のクラスに解析されたデータの両方を返すにはどうすればよいですか。
Class1.cs (プライマリ コード)
int num1;
Class2 class2Object = new Class2();
public Class1()
{
//constructor
}
public void Num1Method()
{
string tempVal = "";
bool errorFlag; //bool = true/false
do
{
errorFlag = false; //no error & initialize
Console.Write("Enter Num1: ");
tempVal = Console.ReadLine();
class2Object.IntErrorCheckMethod(tempVal);
}//close do
while (errorFlag == true);
}//close Num1Method
Class2.cs (エラーと解析の処理)
public bool IntErrorCheckMethod(string xTempVal)
{
int tempNum = 0;
bool errorFlag = false;
try
{
tempNum = int.Parse(xTempVal);
}
catch(FormatException)
{
errorFlag = true;
tempNum = 999;
}
return errorFlag;
}//close int error check
したがって、Class2 は true/false のみを返します (エラーがあるかどうか)。適切に解析されたデータを Class1 に返して "int num1" 変数に入れるにはどうすればよいですか?
私たちの教授は、ブール値を削除してダミー値を使用することしか考えられません (データにエラーがある場合、値を 999 に設定してそれを返し、if elseif を実行して値が 999 であるかどうかを確認し、エラー メッセージを返します。それ以外の場合は、データを変数に送信します。
999 はユーザーが入力した適切なデータである可能性があるため、エラーに bool を使用できるコードの方が優れていると思います。
どんなアイデアでも大歓迎です、ありがとう!