小编rom*_*man的帖子

通用方法存储在哪里?

我在.ΝΕΤ上读过一些关于泛型的信息,并注意到一件有趣的事情.

例如,如果我有一个泛型类:

class Foo<T> 
{ 
    public static int Counter; 
}

Console.WriteLine(++Foo<int>.Counter); //1
Console.WriteLine(++Foo<string>.Counter); //1
Run Code Online (Sandbox Code Playgroud)

两类Foo<int>,并Foo<string>在运行时不同.但是具有泛型方法的非泛型类呢?

class Foo 
{
    public void Bar<T>()
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

很明显,只有一个Foo班级.但是方法Bar怎么样?所有泛型类和方法都在运行时使用它们使用的参数关闭.这是否意味着类Foo有许多实现,Bar并且有关此方法的信息存储在内存中?

.net c# generics

55
推荐指数
3
解决办法
2783
查看次数

查找以另一个开头的字符串中的所有命名组出现

我在c#中构建正则表达式时遇到了一些麻烦.

例如,我有一堆字符串:

1: TestString.WrittenEspecially.ForStackOverflowStringTest
2: TestString.WrittenEspecially.ForStackOverflowString
3: TestString.WrittenEspecially.StringForStackOverflowStringTest
4: TestString.WrittenStringEspecially.ForStackOverflowStringTest
Run Code Online (Sandbox Code Playgroud)

我想在以"1:"或"3:"开头的行中找到所有出现的单词"String".

我有一个正则表达式: ^(1:|3:).*(?<str>String)+.*

但它只找到最后一次出现的命名组.

有任何想法吗?

c# regex

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

标签 统计

c# ×2

.net ×1

generics ×1

regex ×1