gpt4 book ai didi

C# 命名空间通信

转载 作者:行者123 更新时间:2023-12-04 16:54:11 26 4
gpt4 key购买 nike

我可以问(作为新手)如何从另一个调用命名空间的方法?如果可能,感谢您设置示例。

例如:(1) 如何设置 MY_PRIMARY 类的属性以使用它们以及 (2) 如何在 MY_SECONDARY 命名空间中调用 AddNumbers 方法?谢谢..

    using.. etc

namespace MY_PRIMARY
{
public partial class SomethingHere
{
public Boolean holiday { get; set; } = false;
public int age { get; set; } = 18;
//etc...
}

class Program
{
private static void Main()
{
// some code here.. and..

public int AddNumbers(int number1, int number2)
{
int result = number1 + number2;
return result;
}
}
};

namespace MY_SECONDARY
{
public partial class SomethingElseHere
{
public Boolean holiday { get; set; } = false;
public int age { get; set; } = 18;
//etc...
}

class Program
{
static void Main()
{
// some code here..
}
// and..

Program outer = new Program();
outer.AddNumbers(3, 18); // <--- this is failing..
}
}

;

最佳答案

命名空间旨在按语义对对象进行分组。我有点困惑为什么你有 2 个程序类。拥有一个类库和一个程序会更有意义。反正...
假设您在命名空间 Program.First 中有一个 Object1,
以及 Program.Second 中的 Object2
Object2 有一个名为 someMethod 的方法。
你会做什么来调用这个方法是
a) 在你的头等舱中添加“using Program.Second”。
b) 创建 Program.Second.Object2 的一个实例,并在其上调用该方法。

https://www.programiz.com/csharp-programming/namespaces

因此,假设您想让 Program() 的对象执行以下操作:

using System;

namespace MY_PRIMARY
{
public partial class SomethingHere
{
public Boolean holiday { get; set; } = false;
public int age { get; set; } = 18;
//etc...
}

public class Program
{
public int AddNumbers(int number1, int number2)
{
int result = number1 + number2;
return result;
}
}
}

namespace MY_SECONDARY
{
public partial class SomethingElseHere
{
public Boolean holiday { get; set; } = false;
public int age { get; set; } = 18;
//etc...
}

class Program
{
static void Main()
{
MY_PRIMARY.Program outer = new MY_PRIMARY.Program();
outer.AddNumbers(3, 18);
}
}
}

(编辑)更新了我的答案,我复制了你的代码,看到你的命名空间没有关闭,因此,你有嵌套的命名空间和类。另外,一些代码直接在您的类中而不是在函数中。

另外,不要定义 2 个 Main() 方法,这是应用程序的入口点。

关于C# 命名空间通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59158590/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com