【问题标题】:How to require a file in C#?如何在 C# 中要求文件?
【发布时间】:2020-07-01 17:31:35
【问题描述】:

我使用的是 Visual Studio Code,而不是 Visual Studio。

我在同一个文件夹中有 2 个文件。

我有一个叫

Main.cs

using System;
namespace csharp
{
    class Program
    {
        static void Main(string[] args)
        {

        }
    }
}

还有一个名为 Person.cs

using System;
class Person {
    string name = "";
    static void talk(Person person) {
        Console.WriteLine($"Hello! My name is {person.name}!");
    }
}

我想在Main.cs 中调用Person.cs,但我不知道怎么做,有一些解决方案说要使用include,但这对我不起作用。或者人们说要使用我没有使用的 Visual Studio 的 C# 函数之一。我使用的是 Visual Studio Code。 Visual Studio 代码≠ Visual Studio。我的 VSC 文件夹/工作区的结构如下:

csharp.csproj
|
Main.cs
|
Person.cs
|
bin-(debug files)
|
obj-(debug files)

【问题讨论】:

  • 当它们在同一个命名空间中时,只需在您的Program 中创建一个新的Person 对象。它现在取决于编译器...如果您使用的是csc,您必须告诉csc 哪些文件要包含在程序集中。 .....虽然您Person.talk 方法是私有的...您应该将其更改为公共。而且...您不应该将Person.talk 设为静态。这没有意义。

标签: c# visual-studio-code


【解决方案1】:

您的 Person 类不在命名空间中,因此它默认为 global 命名空间。您应该可以使用global::Person 访问它。但是,您也可以将它放在与Program 类相同的命名空间中。然后就可以直接使用了。

请注意,talk 方法是 private,如果您没有另外声明的话。您必须声明它publicinternal 才能从类Person 之外访问它。

using System;

namespace csharp
{
    class Person {
        string name = "";
        public static void talk(Person person) {
            Console.WriteLine($"Hello! My name is {person.name}!");
        }
    }
}

如果您将类放在不同的命名空间中,您可以使用using 指令来访问它。

using YourNamespace;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-26
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    • 2019-05-13
    • 2022-01-01
    • 1970-01-01
    相关资源
    最近更新 更多