在
计算机科学中,字面量(literal)是用于表达
源代码中一个固定值的
表示法(notation)。几乎所有
计算机编程语言都具有对基本值的字面量表示,诸如:整数、
浮点数以及
字符串;而有很多也对
布尔类型和字符类型的值也支持字面量表示;还有一些甚至对
枚举类型的元素以及像数组、记录和对象等
复合类型的值也支持字面量表示法。C语言关于复合字面量的介绍可参考:。
字符串字面量(stringliteral)是指
双引号引住的一系列字符,双引号中可以没有字符,可以只有一个字符,也可以有很多个字符。
字面量作为一种通用的,跨平台的
数据交换格式,在程序界是公认的事实;而.NetFramework以前的版本中麻烦的XML操作,常常令程序员心生不快。记得以前试图生成一个XML文件,无非是两种模式:用
StringBuilder拼接XML
字符串,或者是用XMLDocument/XMLWriter进行
DOM操作。StringBuilder是有足够的速度,但是没有稳定性的保障,需要多次过滤以保护XML文件的完整性。而使用MSXML的包装System.Xml进行操作,又未免太麻烦了些。 字面量功能是
VisualBasic9为解放程序员劳力作出的一项非常大的改进,它可让程序员直接在代码中嵌入XML进行生成操作。借助
编译器的力量,XML字面量调用System.Xml.Linq进行XML的动态生成。在C#中,虽然同样可以调用这个
命名空间下的类进行生成,但是远没有VisualBasic的模式轻松,省力。举一个简单的范例,用于动态生成一个
XML文档:
PublicFunctionBuildXMLFromStringBuilder()FunctionBuildXMLFromStringBuilder(NameAsString,AgeAsInteger)AsString
PublicFunctionBuildXMLFromXmlDom()FunctionBuildXMLFromXmlDom(ByValNameAsString,ByValAgeAsInteger)AsString
PublicFunctionBuildXMLFromXLinq()FunctionBuildXMLFromXLinq(ByValNameAsString,ByValAgeAsInteger)AsString