1.前言
开发人员不喜欢打字。如果你希望提高开发人员的生产力,减少键入的数量,这也同时减少打字稿的数量以及因此产生的编译器错误,这些都极大分散了开发人员的注意力。代码重用是开发人员收集代码的另一个原因。即使单个应用程序也会大量地由小而公共的代码段组成,在几乎每个程序中都会有相同的代码元素:循环、类、异常处理等等。开发人员传统上是对代码进行剪切和粘贴以避免重复键入。但是这具有相当的局限性,包括有限的持久性,应该有更可行的解决方案。
这个解决方案就是在Visual Studio 2005中引入的代码段技术。代码段是可重用的源代码的容器。一个代码段是代码的一个别名。插入一个代码段就是在光标处或选中的地方将它所代表的代码插入到源文件中。代码段提高了开发人员的效率和准确性。
2.初识代码段
(1).什么是代码段?
将一段代码行提取出来,可以多次重复的使用。VS IDE提供对代码段的完整支持、使代码编写更快、更容易、更可靠。
 
一个代码段的例子
 
(2).系统默认代码段
对于开发人员的例行任务,Visual Studio 2005有默认代码段。默认代码段是代码扩展和外侧代码的混合。默认代码段出现在IntelliSense完成列表和代码选择器中。表1列出了一些默认代码段。
表1 默认代码段
代码段名
描    述
#if
该代码段用#if和#endif命令围绕代码
#region
该代码段用#region和#endregion命令围绕代码
~
该代码段插入一个析构函数
attribute
该代码段插入一个定制属性的声明,该定制属性是从System.Attribute派生的一个类
checked
该代码段用一个checked块围绕代码
class
该代码段插入一个类声明
ctor
该代码段插入一个构造函数
cw
该代码段插入一个Console.WriteLine语句
do
该代码段用一个do while块围绕代码
else
该代码段插入一个else块
enum
该代码段插入一个enum声明
equals
该代码段重写从System.Object类型继承的Equals方法
exception
该代码段插入一个应用程序异常的声明,该异常派生自System.Exception
for
该代码段用一个for循环围绕代码
foreach
该代码段用一个foreach循环围绕代码
forr
该代码段用一个decrementing for循环围绕代码
if
该代码段用一个if块围绕代码
indexer
该代码段插入一个索引器函数
interface
该代码段插入一个接口声明
iterator
该代码段插入一个迭代器
interindex
该代码段插入一个命名的迭代器和索引器
invoke
该代码段插入并调用一个事件
lock
该代码段用一个lock块围绕代码
mbox
该代码段插入MessageBox.Show语句
namespace
该代码段用一个namespace围绕代码
Prop
该代码段插入一个属性和后备字段
propg
该代码段插入一个只读属性。只读属性只有一个get方法
Sim
该代码段插入一个返回一个整数的静态入口方法
struct
该代码段插入一个struct声明
Svm
该代码段插入一个返回为void的静态入口方法
switch
该代码段插入一个switch语句
Try
该代码段插入一个try-catch块
Tryf
该代码段插入一个try-finally块
unchecked
该代码段用一个unchecked块围绕代码
unsafe
该代码段插入一个unsafe块
using
该代码段用一个using块围绕代码
while
该代码段用一个while循环围绕代码
 

VS中的代码段功能的更多相关文章

  1. 用Handler的post()方法来传递线程中的代码段到主线程中执行

    自定义的线程中是不能更新UI的,但是如果遇到更新UI的事情,我们可以用handler的post()方法来将更新UI的方法体,直接传送到主线程中,这样就能直接更新UI了.Handler的post()方法 ...

  2. Visual Studio中自定义代码段!

    Visual Studio中自定义代码段! 第一步:在编辑器中进行快捷键的输入[ctrl + shift + p] 或者 点击 查看 第一个选项就是!请看下图 第二步:选择你要配置代码段的语言, 这里 ...

  3. 在VS中自定义代码段

    这个功能不怎么实用,但毕竟是VS存在的一个功能点嘛,知道一点也好!说它不怎么实用是有原因的,因为现在强大的VS编辑器拥有不计其数的插件,而且这些插件也有很多很强大的!比如Resharper,Code ...

  4. eclipse中的代码提示功能

    Eclipse 的代码提示功能,具体配置 1. 打开Eclipse ,然后"window"→"Preferences" 2. 选择"java" ...

  5. VisualStudio中的代码段

    VS很强大,在这里就不过多说了,在平时码代码时应用代码段会提高我们的编写速度. 举个例子: 比如输入Console.WriteLine (); 传统方法就是一个字母一个字母的输入进去. 如果大家掌握了 ...

  6. VS中自定义代码段

    如果数据属性的数量比较多,那么输入总是要花费较多的时间,这里有个小技巧,就是使用快捷的输入方法,但是VS自身提供的代码段是有限的,幸运的是我们可以通过:工具> 代码段管理器>添加来添加自定 ...

  7. 实用---eclipse中的代码提示功能

    Eclipse 的代码提示功能,具体配置 1. 打开Eclipse ,然后“window”→“Preferences” 2. 选择“java”,展开,“Editor”,选择“Content Assis ...

  8. eclipse中安装thymeleaf插件完成thymeleaf模板中自动代码提示功能

    插件地址:https://github.com/thymeleaf/thymeleaf-extras-eclipse-plugin 页面有介绍如何使用:

  9. LaTeX中常用代码段snippets(持续更新)

    1.displaymath 单行数学环境,不带编号. \begin{displaymath} This\ is\ displaymath\ envirment.\ I\ don 't\ have\ a ...

随机推荐

  1. Python快速教程目录(转)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容 ...

  2. spring: 加载远程配置

    通常在spring应用中,配置中的properties文件,都是打包在war包里的,部署规模较小,只有几台服务器时,这样并没有什么大问题.如果服务器多了,特别是集群部署时,如果要修改某一项配置,得重新 ...

  3. oracle 11g的企业管理器

    oracle 11g的企业管理器不同于其他版本,它是B/S的,默认登录为:https://localhost:1158/em,但我试了IE8跟360浏览器都不行,谷歌浏览器是可以访问的

  4. FineUI v4.0.2 (beta) 发布了!

    FineUI v4.0.2 (beta) 已经于 2013-12-15 发布! ================================== 关于FineUI基于 ExtJS 的开源 ASP. ...

  5. lecture10-模型的结合与全贝叶斯学习

    这是Hinton的第10课 这节课有两篇论文可以作为背景或者课外读物<Adaptive mixtures of local experts>和<Improving neural ne ...

  6. Theano2.1.5-基础知识之打印出theano的图

    来自:http://deeplearning.net/software/theano/tutorial/printing_drawing.html Printing/Drawing Theano gr ...

  7. bootstrap - typeahead自动补全插件

    $('#Sale').typeahead({ ajax: { url: '@Url.Action("../Contract/GetSale")', //timeout: 300, ...

  8. C# 7.0 新特性1: 基于Tuple的“多”返回值方法

    本文基于Roslyn项目中的Issue:#347 展开讨论. 1. C# 7.0 新特性1: 基于Tuple的“多”返回值方法 2. C# 7.0 新特性2: 本地方法 3. C# 7.0 新特性3: ...

  9. express-partials与express4.x不兼容问题

    在express中设置view engine为html,express-partials会导致语法不正确,其实只要做一行代码的改动就可以 function renderer(ext){ if(ext[ ...

  10. 在线程中调用SaveFileDialog

    在多线程编程中,有时候可能需要在单独线程中执行某些操作.例如,调用SaveFileDialog类保存文件.首先,我们在Main方法中创建了一个新线程,并将其指向要执行的委托SaveFileAsyn.在 ...