无法访问多个全局变量
Can´t access several global variables
这是一个基本的计算器。错误出现在最后一个名为 printResult
的方法上。我无法将 num1, num2, operador
和 resultado
设置为全局。我可以在 Class Calculadora
上访问 printResult
但我无法从 printResult
方法访问 Class Calculadora
的变量。
using System;
namespace supercalc
{
public class calculadora
{
public static void Main (string [] args)
{
float num1;
float num2;
string operador;
float resultado;
Console.Clear();
Console.WriteLine("Insira o primeiro número");
num1 = int.Parse(Console.ReadLine());
Console.WriteLine("Insira o segundo número ");
num2 = int.Parse(Console.ReadLine());
Console.WriteLine("Insira o operador");
operador = Console.ReadLine();
switch(operador)
{
case "+":
resultado = num1 + num2;
automatizar.printResult();
break;
case "-" :
resultado = num1 - num2;
automatizar.printResult();
break;
case "*":
resultado = num1 * num2;
automatizar.printResult();
break;
case "/":
resultado = num1 / num2;
automatizar.printResult();
break;
default:
break;
}//END SWITCH
Console.WriteLine("Press any key to leave...");
Console.ReadKey();
}//END VOID MAIN
}//END CLASS CALCULADORA
public class automatizar
{
public static void printResult()
{
Console.WriteLine(supercalc.calculadora.num1 + calculadora.operador +calculadora.num2 + " é " + calculadora.resultado);
//ERROR ON PREVIOUS LINE OF CODE : supercalc.calculadora doesnt have a definition for num1, operador, num2 and resultado
//HELP
//I CANT SET THEM AS GLOBAL!
}
}
}//END NAMESPACE
你提到的变量不是"global",它们是Main()的本地变量
public static void Main (string [] args)
{
float num1;
float num2;
您不能从其他函数访问它们。使它们可访问的最直接方法是使它们成为静态 class 字段
private static float num1;
private static float num2;
public static void Main (string [] args)
{
这是一个基本的计算器。错误出现在最后一个名为 printResult
的方法上。我无法将 num1, num2, operador
和 resultado
设置为全局。我可以在 Class Calculadora
上访问 printResult
但我无法从 printResult
方法访问 Class Calculadora
的变量。
using System;
namespace supercalc
{
public class calculadora
{
public static void Main (string [] args)
{
float num1;
float num2;
string operador;
float resultado;
Console.Clear();
Console.WriteLine("Insira o primeiro número");
num1 = int.Parse(Console.ReadLine());
Console.WriteLine("Insira o segundo número ");
num2 = int.Parse(Console.ReadLine());
Console.WriteLine("Insira o operador");
operador = Console.ReadLine();
switch(operador)
{
case "+":
resultado = num1 + num2;
automatizar.printResult();
break;
case "-" :
resultado = num1 - num2;
automatizar.printResult();
break;
case "*":
resultado = num1 * num2;
automatizar.printResult();
break;
case "/":
resultado = num1 / num2;
automatizar.printResult();
break;
default:
break;
}//END SWITCH
Console.WriteLine("Press any key to leave...");
Console.ReadKey();
}//END VOID MAIN
}//END CLASS CALCULADORA
public class automatizar
{
public static void printResult()
{
Console.WriteLine(supercalc.calculadora.num1 + calculadora.operador +calculadora.num2 + " é " + calculadora.resultado);
//ERROR ON PREVIOUS LINE OF CODE : supercalc.calculadora doesnt have a definition for num1, operador, num2 and resultado
//HELP
//I CANT SET THEM AS GLOBAL!
}
}
}//END NAMESPACE
你提到的变量不是"global",它们是Main()的本地变量
public static void Main (string [] args)
{
float num1;
float num2;
您不能从其他函数访问它们。使它们可访问的最直接方法是使它们成为静态 class 字段
private static float num1;
private static float num2;
public static void Main (string [] args)
{