当前位置:  开发笔记 > 编程语言 > 正文

只使用C#关键字,您可以制作的最长的法律声明块是什么?

如何解决《只使用C#关键字,您可以制作的最长的法律声明块是什么?》经验,为你挑选了2个好方法。

我在C#中编写了一些代码,我发现自己写了:

return new MyClass(...

当我注意到,这两个returnnew都是C#关键字.所以我想知道C#中最长的关键字合法序列是什么.我能想到的只有:

internal static override void MyFunc(...

internal static override void所有关键字在哪里?你能想到更长的关键词序列吗?

注意:这个问题确实没有意义.我只是希望在火上浇一些乐趣:-)



1> Marc Gravell..:

对于6:

new protected internal unsafe virtual decimal Foo() {...}

编辑7:

new protected internal unsafe virtual extern decimal Foo();

如果我们允许括号和括号......

(编辑 "锁定","新对象()","as"和"字符串"由其他人提供;见评论)

decimal Bar() {
    lock (new object() as string) {
        if (true) {
            checked {
                unsafe {
                    try {
                        do {
                            return default(decimal);
                            unchecked {break;}
                            continue;
                        } while (false);
                    }
                    catch { throw; }
                    finally { }
                }
            }
        }
    }
}


另外,你可以用两个便宜的额外关键字替换默认(十进制)和(对象)typeof(默认(十进制)).
在方法声明中为另外一个关键字添加async.

2> Niki..:

我想这是无限的:

return null as string as string as string as string as string....


呸; 我更喜欢*不同的*条款...但我不能说它的真相......
不同关键字的数量是有限的,因此您无法在不重复的情况下生成无限链.但是你可以生成相当长的链:返回true是bool,因为对象是int,因为string是byte为double ...
推荐阅读
爱唱歌的郭少文_
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有