如何从虚拟类访问某些内容,以便将它们用于 MAIN 类中的 If/Else 语句

本文关键字:MAIN 用于 If 语句 Else 访问 虚拟 | 更新日期: 2023-09-27 18:25:04

class Registration
{
    public virtual void Register()
    {
        int Registration_System;
        Console.Write("Registration System");
        Console.Write("'n 1. Add Student" +
                      "'n 2. View Student" +
                      "'n 3. Search" +
                      "'n 4. Edit" +
                      "'n 5. Delete" +
                      "'n 6. Exit");
        Console.Write("'nChoose: "); Registration_System = int.Parse(Console.ReadLine());
    }
}
class Program //Main class
{
    static void Main(string[] args)
    {
        Registration r = new Registration();
        r.Register();
        MSIT it = new MSIT();
        MSCS cs = new MSCS();

    }
}

所以基本上我需要访问Registration_System的值才能在 Main 类的 if/else 系统中使用它们:

if (Registration_System == 1)
{
}
..

我将至少与其他 6 个班级一起这样做,因为我错过了几节课。到目前为止,我只需要为 If/Else 设置一个框架,以便我可以访问所有其他类,但我不能不使用 Registration_System 的值来做到这一点。不过我做得对吗?还有别的办法吗?

如何从虚拟类访问某些内容,以便将它们用于 MAIN 类中的 If/Else 语句

使用它作为 Register 函数的返回值怎么样,如下所示:

public virtual int Register()
{
    ....
    return Registration_System;
}

首先,在 C# 中没有称为虚拟类的东西。我猜,你的意思是虚拟方法(?无论如何,如果你想在你的 Main 类中访问 Registration_System 的值,要么你必须让它成为 Registration 类中的公共全局变量,要么必须将其封装在公共属性中(再次在同一个Registration类中(,如 cpl 所述。