ylbtech-Microsoft-CSharpSamples:ylbtech-LanguageSamples-PartialTypes(部分类型)
1.A,示例(Sample) 返回顶部

“分部类型”示例

本示例演示了如何使用允许在两个或更多 C# 文件中定义类或结构的分部类型。这就允许多个程序员并行处理一个类的不同部分,并将复杂类的不同方面保存在不同的文件中。

安全说明

提供此代码示例是为了阐释一个概念,它并不代表最安全的编码实践,因此不应在应用程序或网站中使用此代码示例。对于因将此代码示例用于其他用途而出现的偶然或必然的损害,Microsoft 不承担任何责任。

在 Visual Studio 中生成并运行“分部类型代码”示例

  • 在“调试”菜单中,单击“开始执行(不调试)”。

从命令行生成并运行“分部类型代码”示例

  1. 使用“更改目录(cd)”命令转到“PartialTypes”目录。

  2. 键入以下命令:

    csc PartialTypes.cs
    PartialTypes
1.B,示例代码(Sample Code)返回顶部

1.B.1, CharPartialPrivate.cs

// 版权所有(C) Microsoft Corporation。保留所有权利。
// 此代码的发布遵从
// Microsoft 公共许可(MS-PL,http://opensource.org/licenses/ms-pl.html)的条款。
//
//版权所有(C) Microsoft Corporation。保留所有权利。 using System;
using System.Collections.Generic;
using System.Text; namespace PartialClassesExample
{
// 使用 partial 关键字可以在其他 .cs 文件中定义
// 此类的附加方法、字段和属性。
// 此文件包含 CharValues 定义的私有方法。
partial class CharValues
{
private static bool IsAlphabetic(char ch)
{
if (ch >= 'a' && ch <= 'z')
return true;
if (ch >= 'A' && ch <= 'Z')
return true;
return false;
} private static bool IsNumeric(char ch)
{
if (ch >= '' && ch <= '')
return true;
return false;
}
}
}

1.B.2, ChartPartialPublic.cs

// 版权所有(C) Microsoft Corporation。保留所有权利。
// 此代码的发布遵从
// Microsoft 公共许可(MS-PL,http://opensource.org/licenses/ms-pl.html)的条款。
//
//版权所有(C) Microsoft Corporation。保留所有权利。 using System;
using System.Collections.Generic;
using System.Text; namespace PartialClassesExample
{
// 使用 partial 关键字可以在其他 .cs 文件中定义
// 此类的附加方法、字段和属性。
// 此文件包含 CharValues 定义的公共方法。
partial class CharValues
{
public static int CountAlphabeticChars(string str)
{
int count = ;
foreach (char ch in str)
{
// IsAlphabetic 是在 CharTypesPrivate.cs 中定义的
if (IsAlphabetic(ch))
count++;
}
return count;
}
public static int CountNumericChars(string str)
{
int count = ;
foreach (char ch in str)
{
// IsNumeric 是在 CharTypesPrivate.cs 中定义的
if (IsNumeric(ch))
count++;
}
return count;
} }
}

1.B.3, PartialTypes.cs

// 版权所有(C) Microsoft Corporation。保留所有权利。
// 此代码的发布遵从
// Microsoft 公共许可(MS-PL,http://opensource.org/licenses/ms-pl.html)的条款。
//
//版权所有(C) Microsoft Corporation。保留所有权利。 using System;
using System.Collections.Generic;
using System.Text; namespace PartialClassesExample
{
class PartialClassesMain
{
static void Main(string[] args)
{
if (args.Length != )
{
Console.WriteLine("One argument required.");
return;
} // CharValues 是一个分部类 -- 该分部类有两个方法
// 是在 CharTypesPublic.cs 中定义的,另有两个方法是在
// CharTypesPrivate.cs 中定义的。
int aCount = CharValues.CountAlphabeticChars(args[]);
int nCount = CharValues.CountNumericChars(args[]); Console.Write("The input argument contains {0} alphabetic and {1} numeric characters", aCount, nCount);
}
}
}

1.B.4,

1.C,下载地址(Free Download)返回顶部
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

ylbtech-LanguageSamples-PartialTypes(部分类型)的更多相关文章

  1. C#中的枚举类型(enum type)

    ylbtech 原文 C#中的枚举类型(enum type) 概念 枚举类型(enum type)是具有一组命名常量的独特的值类型.在以下示例中: enum Color { Red, Green, B ...

  2. C#中的值类型(value type)与引用类型(reference type)的区别

    ylbtech- .NET-Basic:C#中的值类型与引用类型的区别 C#中的值类型(value type)与引用类型(reference type)的区别 1.A,相关概念返回顶部     C#中 ...

  3. Error-MVCr:找到了多个与 URL 匹配的控制器类型。如果多个控制器上的特性路由与请求的 URL 匹配,则可能会发生这种情况。

    ylbtech-Error-MVCr:找到了多个与 URL 匹配的控制器类型.如果多个控制器上的特性路由与请求的 URL 匹配,则可能会发生这种情况. 1.返回顶部 1. 找到了多个与 URL 匹配的 ...

  4. 分析器错误消息: 未能找到 CodeDom 提供程序类型

    ylbtech-Error-WebForm:分析器错误消息: 未能找到 CodeDom 提供程序类型“Microsoft.CodeDom.Providers.DotNetCompilerPlatfor ...

  5. HTML5: input:file上传类型控制

    ylbtech-HTML5: input:file上传类型控制   1. 一.input:file 属性返回顶部 一.input:file属性 属性值有以下几个比较常用: accept:表示可以选择的 ...

  6. ylbtech-LanguageSamples-Nullable(可以为 null 的类型)

    ylbtech-Microsoft-CSharpSamples:ylbtech-LanguageSamples-Nullable(可以为 null 的类型) 1.A,示例(Sample) 返回顶部 “ ...

  7. Java-Runoob:Java 变量类型

    ylbtech-Java-Runoob:Java 变量类型 1.返回顶部 1. Java 变量类型 在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifie ...

  8. 杂项:MIME(多用途互联网邮件扩展类型)百科

    ylbtech-杂项:MIME(多用途互联网邮件扩展类型)百科 MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型.是设定某种扩展名的文件用 ...

  9. C# 中的结构类型(struct type)

    ylbtech- .NET-Basic:C# 中的结构类型(struct type) C# 中的结构类型(struct type) 1.A,相关概念返回顶部   像类一样,结构(struct)是能够包 ...

随机推荐

  1. Struts2学习笔记02 之 使用

    一.页面向Action传参 1.基本属性注入,页面命名name,action提供成员变量name并提供set方法. 2.域模型注入:页面用user.name对象点属性形式.action成员user对象 ...

  2. 深入解析当下大热的前后端分离组件django-rest_framework系列三

    三剑客之认证.权限与频率组件 认证组件 局部视图认证 在app01.service.auth.py: class Authentication(BaseAuthentication): def aut ...

  3. hdu 1533(最小费用最大流)

    Going Home Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  4. poj 3264(RMQ或者线段树)

    Balanced Lineup Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 42929   Accepted: 20184 ...

  5. opencv中矩阵计算的一些函数

    转自:http://blog.sina.com.cn/s/blog_7908e1290101i97z.html 综述: OpenCV有针对矩阵操作的C语言函数. 许多其他方法提供了更加方便的C++接口 ...

  6. QT中ui更改后不能更新的解决方法

    ui源文件到界面显示的原理可以网上搜索,这里不再描述.简单讲就是先要从*.ui生成ui_*.h然后再编译,所以界面未更新实际上是因为ui_*.h这个文件没有更新导致的. 出现此问题后我尝试了以下几个方 ...

  7. [水煮 ASP.NET Web API2 方法论](12-2)管理 OData 路由

    问题 如何控制 OData 路由 解决方案 为了注册路由,可以使用  HttpConfigurationExtension 类中 MapODataServiceRoute 的扩展方法.对于单一路由这样 ...

  8. CentOS7英文环境下使用中文输入法

    一般我们使用英文环境是没有办法使用中文的,这是因为我们没有设置在英文环境下的中文配置,下面我们在英文环境下配置中文输入法ibus使得我们可以输入中文. 首先,安装ibus(centos6以后已经默认安 ...

  9. 动态创建timer

    Private  timer:Ttimer;procedure MyTimerDo(Sender:Tobject);procedure create ;  timer:=TtIMER.Create;  ...

  10. XSL

    前言 XSL,拓展样式表语言,可以理解为XML用的CSS,在其中定义xml格式对应的东西 放在xsl文件中 XSLT,按照XSL中的格式将XML转为XHTML 语法 XML声明: <?xml v ...