ylbtech-LanguageSamples-Libraries(库)
ylbtech-Microsoft-CSharpSamples:ylbtech-LanguageSamples-Libraries(库) |
1.A,示例(Sample) 返回顶部 |
“库”示例
本示例演示如何用 C# 中创建和使用 DLL。
安全说明 |
---|
提供此代码示例是为了阐释一个概念,它并不代表最安全的编码实践,因此不应在应用程序或网站中使用此代码示例。对于因将此代码示例用于其他用途而出现的偶然或必然的损害,Microsoft 不承担任何责任。 |
在 Visual Studio 中生成并运行“库”示例
在“解决方案资源管理器”中,右击“FunctionTest”项目并单击“设为启动项目”。
在“解决方案资源管理器”中,右击“FunctionTest”项目并单击“属性”。
打开“配置属性”文件夹并单击“调试”。
在“命令行参数”属性中,输入
3 5 10
。单击“确定”。
在“调试”菜单中,单击“开始执行(不调试)”。这将自动在“Functions”目录中生成库并执行程序。
从命令行生成并运行“库”示例
使用“更改目录”命令转到“Functions”目录。
键入以下命令:
- csc /target:library /out:Functions.dll Factorial.cs DigitCounter.cs
使用“更改目录”命令转到“FunctionTest”目录。
键入以下命令:
- copy ..\Functions\Functions.dll .
- csc /out:FunctionTest.exe /R:Functions.DLL FunctionClient.cs
- FunctionTest 3 5 10
- copy ..\Functions\Functions.dll .
1.B,示例代码(Sample Code)返回顶部 |
1.B.1, DigiCounter.cs
- // 版权所有(C) Microsoft Corporation。保留所有权利。
- // 此代码的发布遵从
- // Microsoft 公共许可(MS-PL,http://opensource.org/licenses/ms-pl.html)的条款。
- //
- //版权所有(C) Microsoft Corporation。保留所有权利。
- // DigitCounter.cs
- // 编译时使用:/target:library
- using System;
- // 声明与 Factorial.cs 中的命名空间相同的命名空间。这样仅允许将
- // 类型添加到同一个命名空间中。
- namespace Functions
- {
- public class DigitCount
- {
- // NumberOfDigits 静态方法计算
- // 传递的字符串中数字字符的数目:
- public static int NumberOfDigits(string theString)
- {
- int count = ;
- for ( int i = ; i < theString.Length; i++ )
- {
- if ( Char.IsDigit(theString[i]) )
- {
- count++;
- }
- }
- return count;
- }
- }
- }
1.B.2, Facotrial.cs
- // 版权所有(C) Microsoft Corporation。保留所有权利。
- // 此代码的发布遵从
- // Microsoft 公共许可(MS-PL,http://opensource.org/licenses/ms-pl.html)的条款。
- //
- //版权所有(C) Microsoft Corporation。保留所有权利。
- // Factorial.cs
- // 编译时使用:/target:library
- using System;
- // 声明命名空间。需要根据
- // 库的命名空间打包库,以便 .NET 运行时可以正确地加载类。
- namespace Functions
- {
- public class Factorial
- {
- // “Calc”静态方法为传入的指定整数
- // 计算阶乘值:
- public static int Calc(int i)
- {
- return((i <= ) ? : (i * Calc(i-)));
- }
- }
- }
1.B.3,
1.B,示例代码2(Sample Code)返回顶部 |
1.B.1, FunctionClient.cs
- // 版权所有(C) Microsoft Corporation。保留所有权利。
- // 此代码的发布遵从
- // Microsoft 公共许可(MS-PL,http://opensource.org/licenses/ms-pl.html)的条款。
- //
- //版权所有(C) Microsoft Corporation。保留所有权利。
- // FunctionClient.cs
- // 编译时使用:/reference:DigitCounter.dll;Factorial.dll
- // 参数:3 5 10
- using System;
- // 下面的 using 指令使 Functions
- // 命名空间中定义的类型可用于此编译单元:
- using Functions;
- class FunctionClient
- {
- public static void Main(string[] args)
- {
- Console.WriteLine("Function Client");
- if ( args.Length == )
- {
- Console.WriteLine("Usage: FunctionTest ... ");
- return;
- }
- for ( int i = ; i < args.Length; i++ )
- {
- int num = Int32.Parse(args[i]);
- Console.WriteLine(
- "The Digit Count for String [{0}] is [{1}]",
- args[i],
- // 调用 DigitCount 类中的
- // NumberOfDigits 静态方法:
- DigitCount.NumberOfDigits(args[i]));
- Console.WriteLine(
- "The Factorial for [{0}] is [{1}]",
- num,
- // 调用 Factorial 类中的 Calc 静态方法:
- Factorial.Calc(num) );
- }
- }
- }
1.B.2,
1.C,下载地址(Free Download)返回顶部 |
![]() |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
ylbtech-LanguageSamples-Libraries(库)的更多相关文章
- 012.CI4框架CodeIgniter, 加载并调用自己的Libraries库
01. 在Libraries目录创建一个Mylib文件,内容是一个简单的类 <?php namespace App\Controllers; class Home extends BaseCon ...
- Qt 添加Includes、Libraries库
1 #------------------------------------------------- # # 加载相机SDK-Includes-Libraries # #------------- ...
- 9.Libraries and visibility 库和可见性
import和liabrary指令可以帮助你创建模块化,可复用的代码.库不仅仅提供API,也是一个私有化单元:库中已下划线(_)开头的类都是对外不可访问的.每个Dart的应用也是一个包,尽管它没有使用 ...
- 大型项目 Gradle 的常用库和版本管理[转]
http://www.tuicool.com/articles/vqQZBrm 大型项目 Gradle 的常用库和版本管理 时间 2016-03-15 06:44:00 Mystra 原文 htt ...
- 所有selenium相关的库
通过爬虫 获取 官方文档库 如果想获取 相应的库 修改对应配置即可 代码如下 from urllib.parse import urljoin import requests from lxml im ...
- java常用英文解释
java常用名词解释: OO: object-oriented ,面向对象 OOP:object-oriented programming,面向对象编程 Author:JCC Object:对象JDK ...
- windows 下 gvim/vim lua支持问题,neocomplete等插件支持
此文是按照知乎 https://www.zhihu.com/question/29333426 "windows下vim的lua支持问题?" 一文汇总的解决方案. 题主提供了不错的 ...
- Java基础常见英语词汇
Java基础常见英语词汇(共70个) ['ɔbdʒekt] ['ɔ:rientid]导向的 ['prəʊɡræmɪŋ]编程 OO: object ...
- Idea15/16 配置Tomcat
1:我这里使用的是Eclipse创建的项目,导出后导入到Idea中使用 2:Idea导入Eclipse项目 3:Idea项目配置(默认快捷键CTRL+SHIT+ALT+S) 3.1 Project 项 ...
- 安卓系统源码编译系列(六)——单独编译内置浏览器WebView教程
原文 http://blog.csdn.net/zhaoxy_thu/article/details/18883015 本文主要对从 ...
随机推荐
- python初学--文件操作、字典
文件读写 1.先打开文件 2.读取/写入内容 3.保存文件 文件的open模式有三种 1.w 写模式,它是不能读的 只要用w打开文件,文件中的东西都会被清空 w+, 写读模式,只要沾上w 就会清空 ...
- SRM 563 Div1 500 SpellCards
Description 有n张符卡排成一个队列,每张符卡有两个属性,等级lili和伤害didi. 你可以做任意次操作,每次操作为以下二者之一: 把队首的符卡移动到队尾. 使用队首的符卡,对敌人造成di ...
- [前端随笔][JavaScript][自制数据可视化] “中国地图”
说在前面 想自己实现一个可视化的中国地图(可以实现如用户来源省份数据统计功能),网上搜了一下,翻了几页几乎都是第三方库(如echarts.js)实现的,简直不能忍. 不是第三方库不好,只是要花时间去适 ...
- oracle 导入dmp文件
/*第1步:创建临时表空间 */ create temporary tablespace webdata_temp tempfile 'D:\oracle\product\10.2.0\oradat ...
- SGU 202. The Towers of Hanoi Revisited
多柱汉诺塔问题. 引用自wiki百科 多塔汉诺塔问题 在有3个柱子时,所需步数的公式较简单,但对于4个以上柱子的汉诺塔尚未得到通用公式,但有一递归公式(未得到证明,但目前为止没有找到反例): 令为在有 ...
- 熟悉并了解uml的使用(一)
本资料对UML各种模型图的构成和功能进行说明,通过本资料的学习达到可以读懂UML模型图的目的.本资料不涉及模型图作成的要点等相关知识. UML简介 UML (Unified Modeling Lang ...
- es6扩展运算符及rest运算符总结
扩展运算符(...) 1.如果一个函数的参数个数不确定,可以用其代替 eg:求若干个数的和 2.改数组的引用为复制一份内存 此刻数组a也发生了变化,因为数组b是a的一个引用 此刻相当于复制了一份a 3 ...
- SocketCluster
官网地址:https://socketcluster.io/ SocketCluster的组成部分,即运行一个SocketCluster服务器,它在服务器生成的进程 1.主进程(Server.js)一 ...
- BZOJ2120/洛谷P1903 [国家集训队] 数颜色 [带修改莫队]
BZOJ传送门:洛谷传送门 数颜色 题目描述 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会向你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R ...
- 洛谷——P1292 倒酒
P1292 倒酒 题目描述 Winy是一家酒吧的老板,他的酒吧提供两种体积的啤酒,a ml和b ml,分别使用容积为a ml和b ml的酒杯来装载. 酒吧的生意并不好.Winy发现酒鬼们都非常穷.有时 ...