2
我目前使用NDA库(非商业),其文档为零并使用EMGU。 这里是我的问题一个例子:我必须在C#中配置一个参数吗?
public void example()
{
Image<Gray,byte> exp = new Image<Gray,byte>(128,128);
foo(exp);
exp.Dispose();
}
public bool foo(Image<Gray,byte> bar)
{
//magic here
//bar.Dispose() ??
return true;
}
当我传递一个EMGU-图像从一个功能到另一个,我一定要打电话.Dispose()
在调用函数吗?或者在被调用者中调用它是否足够?
好问题,但它已经被回答了很长时间。标准的经验法则是,如果你创建*它,你负责*处置它(除非有一致同意的所有权转让)。有关更多详细信息,请查看参数如何传递。像这样的对象是通过C#中的引用传递的,所以你没有制作对象的副本。 –
还要注意,即使引发异常,也应该使用'using'关键字来确保调用exp.Dispose()。 –
@CodyGray哦,快点!但我发誓我多次使用搜索。但也许我只是无法用正确的词来搜索它。感谢您的回答(评论)和链接! –