小编Rob*_*les的帖子

C#中填充矩形数组的扩展方法

我想写填充多维矩形数组的扩展方法.我知道如何为具有固定数量测量的阵列做到这一点:

public static void Fill<T>(this T[] source, T value)
{
    for (int i = 0; i < source.Length; i++)
        source[i] = value;
}
public static void Fill<T>(this T[,] source, T value)
{
    for (int i = 0; i < source.GetLength(0); i++)
        for (int j = 0; j < source.GetLength(1); j++)
            source[i, j] = value;
}
public static void Fill<T>(this T[,,] source, T value)
{
    for (int i = 0; i < source.GetLength(0); i++)
        for (int j = 0; j < …
Run Code Online (Sandbox Code Playgroud)

.net c# arrays

7
推荐指数
1
解决办法
1356
查看次数

接口类型构造函数

在"CLR Via C#"的第八章(p189)中,杰弗里里希特说:

"Type构造函数可以应用于接口(尽管C#不允许这样做)"

我做了一些研究,我似乎无法找到为什么接口需要任何语言的类型构造函数.这似乎是你在CLR中明确禁止的东西.

什么时候需要它,为什么可能呢?

.net c# clr

5
推荐指数
1
解决办法
318
查看次数

匿名实例化语法 - 好还是坏?

对于我只使用一次实例化对象的快速任务,我知道我可以执行以下操作:

int FooBarResult = (new Foo()).Bar();
Run Code Online (Sandbox Code Playgroud)

我说这对于非一次性物品是完全可以接受的,并且比替代物更具可读性:

Foo MyOnceUsedFoo = new Foo();
int FooBarResult = MyOnceUsedFoo.Bar();
Run Code Online (Sandbox Code Playgroud)

你用哪个,为什么?
你会在生产应用程序中使用这种类型的匿名实例化吗?
偏好:带括号"(new Foo()).Bar();" 或没有"new Foo().Bar();"?

(编辑从Random类抽象问题)

c# syntax performance

3
推荐指数
2
解决办法
381
查看次数

标签 统计

c# ×3

.net ×2

arrays ×1

clr ×1

performance ×1

syntax ×1