按照惯例,老周是先吹牛后讲正事。今天就给大伙吹吹这个事。
有网友不知道是不是昨晚喝高了,居然研究起老周来了。实话告诉你,老周没什么好研究的,老周又不是编译器,老周只是一个游离于大善大恶之间的平凡人,说来也只不过是:
无故寻愁觅恨,有时似傻如狂。纵然生得好皮囊,腹内原来草莽。潦倒不通世务,愚顽怕读文章。行为偏僻性乖张,那管世人诽谤!
老周上不行圣人之道,下不通小人之事,渺渺乎,悠悠于人世间的一颗微尘罢了。所以,不要研究老周了。
网友感兴趣,老周你是怎么学到编程了的,而且还完全自学的。
唉,要说起这个,实话告诉你,当初老周拼命写代码是无目的、无功名、无条件,就是好奇,然后是喜欢。孔爷爷说得真TMD好,“知之者不如好之者,好之者不如乐之者”,说来也是,你不喜欢的东西,最好别学了,最后是学不好的。因此,你要是选择要学习了,那就收收心吧,对于这个,老周没什么特别好的建议,还是那句话:收收心吧。
==========================================================
好,闲话扯完了,下面扯正经事。VS 2015有一个功能,让我相当喜欢,就是在“视图” - “其他窗口”菜单下面有个叫“C# 交互”的窗口,简直是大爱这个窗口。
为啥?以前嘛,如果要写一些小测试的代码,非得要新建一个项目,然后再写代码做测试。对于一些小小的内容还要建个项目,真是不好。不过,现在VS 2015有了这个交互功能,要测代码方便很多,你可以在这个窗口中:
1、直接输入C#代码;
2、有智能提示;
3、实时编译,计算表达式结果。
是不是觉得很玄乎?非也,至少没那些扯蛋的玄幻小说那个玄,但绝对是个好功能。
这个窗口需要VS 2015 update 1,注意,它和VS的N年前的命令行窗口不同,现在这个交互窗口用的是新的编译器。
屁话少说,来来来,老周教你玩玩,很爽的。
打开VS 2015,在右上角的快速启动输入框中输入“C# 交互”,然后会找到[视图]菜单下面的这个命令,直接点击即可。
然后你会看到这个窗口:
和命令提示窗口差不多,假如,我现在想知道int类型的最大值是多少,你直接输入:
int.MaxValue
然后按下回车,你会看到实时执行的结果。
再比如,Environment类有个静态属性ProcessorCount,可以得到计算机上CPU数量,包含核数和线程数。输入:
Environment.ProcessorCount
然后按下回车,看
双核四线程,返回4。
-----------------------------------------------------------------------
没玩够的话,咱们继续,在使用加密API的时候,尤其是双向加密时,通常想知道key和IV的位数。比如,AES算法,我想知道它的Key和IV分别是多少位。来,动手。
首先,引入命名空间,每输完一句就回车。
using System.Security.Cryptography;
new一个AesCryptoServiceProvider实例:
AesCryptoServiceProvider prd = new AesCryptoServiceProvider();
输入以下表达式,就可以得到key的位数了。
prd.KeySize
最后,看整体效果。
如何,刺激不。
------------------------------------------------------------------------------------------------------
再举个例子,假如我要用System.Xml.Linq下面的XDocument类来创建一个XML文档,而这个窗口默认只引用System、mscorelib和system.core,并没有引用System.Xml.Linq程序集,那怎么做呢?
不用怕,这个窗口还支持动态引用程序集,输入:
#r "System.Xml.Linq"
以#r开头,然后空格,接着是字符表达式,内容为程序集的名字。而且,你在输入时还有智能提示。
随后,你就可以using了。
using System.Xml.Linq;
下面来建一个XML文档。
XDocument doc = new XDocument(new XElement("root", new XElement("book", "《南游记》")));
回车后,代码会执行。
然后看看新建的XML文档中有啥。直接输入变量名doc,然后回车,会自动调用其ToString方法。
doc
最后,结果如下。
如果要清除窗口的内容,请直接输入:
#cls
然后回车。
这个交互窗口够强大吧。
好,今天的表演结束,谢谢观看。