我正在将 java 代码移植到 C# 并遇到此代码。我不知道如何移植它,因为它似乎声明了类数组。我在 C# 方面的知识太有限,无法弄清楚如何在 C# 中实现此操作。在 C# 中是否有与此 Stub 声明等效的方法,它看起来如何?我将它缩小到最低限度,因为它声明了 10 个对象。以下是代码的外观:
public interface IcodecWeightFunctionStub
{
void hcodec_weight_func(int[] block, int block_offset, int stride, int log2_denom, int weight, int offset);
}
public interface IHcodecBiWeightFunctionStub
{
void hcodec_biweight_func(int[] dst, int dst_offset, int[] src, int src_offset, int stride, int log2_denom, int weightd, int weights, int offset);
}
public IHcodecWeightFunctionStub[] weight_hcodec_pixels_tab = new IHcodecWeightFunctionStub[] {
new IHcodecWeightFunctionStub() {
public void hcodec_weight_func(int []block, int block_offset, int stride, int log2_denom, int weight, int offset) {
weight_hcodec_pixels_c(16, 16, block, block_offset, stride, log2_denom, weight, offset);
}
},
new IHcodecWeightFunctionStub() {
public void hcodec_weight_func(int []block, int block_offset, int stride, int log2_denom, int weight, int offset) {
weight_hcodec_pixels_c(16, 8, block, block_offset, stride, log2_denom, weight, offset);
}
}
};
问题不在于在 C# 中实例化接口,而更多在于在 C# 中返回新类。