在 C/C++ 中,我可以创建一个文件并将所有函数放在这个文件中。
库文件
void plus(int i, int j);
库文件
#include "lib.h"
void plus(int i, int j)
{
printf("%d\n", i+j);
}
主文件
#include "lib.h"
main()
{
plus(1, 2);
}
但是在 C# 中,如何将函数放在其他cs
文件中并将其包含在 中main.cs
?
首先,你不应该真的这样做。在 C/C++ 世界中这样做是因为您不能使用稍后在程序中声明的函数。
头文件还用作操作系统或某些供应商的共享库的接口。
所以@Tigran 所说的相当于C# 中的相同主体。你声明了一个 iterface。
如果您真的想做字面意义上的要求,则可以使用部分函数。我把它放在这里给任何好奇的人。其设计目的与 C/C++ 不同,因此您需要评估您是否真的想要这样做,我认为您不想这样做。
您可以这样做,请参阅 msdn 了解更多信息:
namespace PM
{
partial class A
{
partial void OnSomethingHappened(string s);
}
// This part can be in a separate file.
partial class A
{
// Comment out this method and the program
// will still compile.
partial void OnSomethingHappened(String s)
{
Console.WriteLine("Something happened: {0}", s);
}
}
}
你不会在 C# 中那样做。
在 C# 中,首先要注意所有函数(在 C# 中称为方法)必须在一个类中。你不能像在 C++ 中那样让它们赤身裸体地四处飘荡。
其次,要访问在另一个“.cs”文件中定义的 C# 类:
using
指令,该指令指定包含您需要的类的命名空间。或者,您可以在方法调用本身中指定完整的命名空间。请注意,要使用该方法,您必须实例化包含类的实例,或者该方法必须是静态的并且您使用ClassName.MethodName()
语法访问它。
如果您想遵循与C++
(出于某种原因)中相同的问题C#
来实现这一点,请在一个文件中声明(例如)interface
一个文件并在另一个文件中实现它,但基本上在您的情况下,我认为您不需要那个,您基本上需要:
main.cs
在文件中实例化对于开发人员来说,还有很多其他不同的方面C#
可能对你来说很熟悉C++
,所以我建议你稍微学习一下。