所以类似这样:
public static class StaticClass {}
public class InstanceClass
{
static StaticClass StaticProperty {get;set;}
public InstanceClass()
{
InstanceClass.StaticProperty = StaticClass;
}
}
我以为可以这样做,但编译器返回以下错误:
静态类型不能用作参数
静态类型不能用作返回类型
编辑:我知道这行不通,但为什么呢?我想像 StaticClass 被存储在内存中的某个地方,所以其他变量可以在同一块内存中引用它,对吧?
编辑2:其中一个使用案例可能是这样的:
说你收集了5个不带源代码的不同静态类,并且它们都执行通用任务,因此你希望通过单个静态类方便地访问它们。你可以这样做:
public static class GenericStuff
{
public LinearAlgebra LinearAlgebra {get;set;}
public StringUtilities String {get;set;}
public GeometryOps Geometry {get;set;}
}
然后像这样使用:
GenericStuff.LinearAlgebra.GetAngleBetweenVectors(v0, v1);
你可以考虑一些其他的使用情况。