C# 使用ResourceManager.GetObject()比较资源的对象
根据我的测试,当使用相同的参数调用ResourceManager.GetObject()时,它从不返回对object的相同引用,而是始终返回不同的引用 我想通过引用比较我的图像 我可以使用像“图像”这样的包装器吗C# 使用ResourceManager.GetObject()比较资源的对象,c#,.net,C#,.net,根据我的测试,当使用相同的参数调用ResourceManager.GetObject()时,它从不返回对object的相同引用,而是始终返回不同的引用 我想通过引用比较我的图像 我可以使用像“图像”这样的包装器吗 当然,您需要确保\u tick也不会被处理:)位图是非常昂贵的对象,它们通常会占用大量内存来存储像素数据。在程序的生命周期中保持一个永久引用是一个非常高的代价。这样做几乎总是错误的。这不是问题,因为我只想比较一些16*16的图像。 // designer of resources:
当然,您需要确保
\u tick
也不会被处理:)位图是非常昂贵的对象,它们通常会占用大量内存来存储像素数据。在程序的生命周期中保持一个永久引用是一个非常高的代价。这样做几乎总是错误的。这不是问题,因为我只想比较一些16*16的图像。
// designer of resources:
internal class Resources {
internal static Bitmap tick {
get {
object obj = ResourceManager.GetObject("tick");
return ((Bitmap)(obj));
}
}
}
// my wrapper:
internal class Images
{
private static Bitmap _tick;
internal static Bitmap tick
{
get { return _tick ?? (_tick = Resources.tick); }
}
}