ホームページ バックエンド開発 C#.Net チュートリアル SUNWEN チュートリアル - C# 上級 (5)

SUNWEN チュートリアル - C# 上級 (5)

Dec 19, 2016 am 10:20 AM

これから説明するのはライブラリであり、C# を使用して DLL ファイルを作成する方法を学びましょう。DLL といえば、WINDOWS の代表的なものであり、誰もがよく使うものです。攻撃の対象です。何はともあれ、まずはコマンド ラインを使用して C# プログラムを DLL にコンパイルする方法と、それをクライアントで使用する方法から始めましょう。 2 つのファイルで、1 つは数値の階乗を計算するために使用される Factorial.cs で、もう 1 つは渡された文字列パラメーター内の数値の数を計算するために使用される

ライブラリを構築できます。コマンド ライン モードで次のようにします:

csc /target:library /out:Functions.dll Factorial.cs DigitCounter.cs

各パラメーターの使用法について説明します:

/target:library:

/out: Functions.dll: 出力 DLL のファイル名を指定します。通常、最初のパラメーターを省略すると、デフォルトのファイルになります。最初のファイルのファイル名は Factorial.dll です

次に、このライブラリを使用する、クライアント ファイル FunctionClient.cs という名前の別のファイルを作成します。次の言語名:

csc /out:FunctionTest.exe /R:Functions.DLL FunctionClient.cs

このコンパイル ステートメントの使用法について話しましょう:

/out:FunctionTest.exe: 出力ファイル名がFunctionTest.exe

/R: Functions.DLL: 参照するライブラリを指定します。現在のディレクトリにない場合は、そのフルパスを指定する必要があります。以下にこれらのファイルのコードを記述します。

000: // LibrariesFactorial.cs
001: System を使用します。

002:

003: 名前空間関数
004: {

005: public class Factorial

006: {
007: public static int Calc(int i)
008 : {
009: return(( i 011: }
012: }
これは階乗のコードです。 cs ファイルの 003 行目で、namespace は名前空間を意味します。M$ によれば、.NET がクラスを正しくロードできるように、ライブラリはその名前空間に従ってパッケージ化する必要があります。

DigitCounter.cs ファイルの内容は次のとおりです。
000: // LibrariesDigitCounter.cs
001: System を使用します。
002:
003: 名前空間関数
004: {

005: public class DigitCount

006: {

007: public static int NumberOfDigits(string theString)

0 08: {
009 : int count = 0;
010: for ( int i = 0; i 011: {
012: if ( Char.IsDigit(theString[i]) )
013: {
014 : count++;
015: }
016: }
017:
018: return count;
020: }
021: }
この例の名前空間は最初のものと一致している必要があることに注意してくださいパラメーター内の数値の数を計算するのは、同じライブラリ内の NumberOfDigits メソッドであるためです。

3 番目のファイルは FunctionClient.cs です


ライブラリが作成されると、他のクラスで使用できることがわかっています。 (ナンセンスです。そうしないと、どうやってライブラリと呼ぶことができますか?) 次の C# プログラムは、先ほど作成したライブラリ内のクラスを使用します。

000: // LibrariesFunctionClient.cs
001: using System;
003: クラス FunctionClient

004: {

005: public static void Main(string[] args)

006: {

007: Console.WriteLine("Function Client")
008:

009: if ( args.Length == 0 )

010: {
011: Console.WriteLine("使用法: FunctionTest ... ");
013: }
014:
015: for ( int i = 0; i < args.Length; i++ )
016: {
017: int num = Int32.Parse(args[i]);
018: Console.WriteLine(
019: "文字列 [{0}] の桁数は [{ 1}]" ,
020: args[i],
021: DigitCount.NumberOfDigits(args[i]));
022: Console.WriteLine(
023: "[{0}] の階乗は [{1 }]",
024: num,
025: Factorial.Calc(num) );
026: }
027: }
028: }
002 行目で、using Functions は Functions.DLL クラスへの参照を指定します。

コマンドラインに次のコマンドを入力すると、出力が表示されます:


FunctionTest 3 5 10

Output:

Function Client

文字列 [3] の桁数は [1]

[3] の階乗は [6] です

文字列 [5] の桁数は [1] です

[5] の階乗は [120] です

文字列 [10] の桁数は [2]

[10] の階乗は [3628800] です

注: この .EXE ファイルを実行するとき、参照する DLL ファイルは、現在のディレクトリ、サブディレクトリ、または CORPATH 環境変数に存在する可能性があります。 .NET 環境では、クラスパスは、システムがクラスを見つけるようにガイドするために使用されます。分かりやすく言うと、Java の CLASSPATH です。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

C# を使用した Active Directory C# を使用した Active Directory Sep 03, 2024 pm 03:33 PM

C# を使用した Active Directory のガイド。ここでは、Active Directory の概要と、C# での動作方法について、構文と例とともに説明します。

C# の乱数ジェネレーター C# の乱数ジェネレーター Sep 03, 2024 pm 03:34 PM

C# の乱数ジェネレーターのガイド。ここでは、乱数ジェネレーターの仕組み、擬似乱数の概念、安全な数値について説明します。

C# データ グリッド ビュー C# データ グリッド ビュー Sep 03, 2024 pm 03:32 PM

C# データ グリッド ビューのガイド。ここでは、SQL データベースまたは Excel ファイルからデータ グリッド ビューをロードおよびエクスポートする方法の例について説明します。

C# シリアル化 C# シリアル化 Sep 03, 2024 pm 03:30 PM

C# シリアル化のガイド。ここでは、C# シリアル化オブジェクトの導入、手順、作業、例についてそれぞれ説明します。

C# のアクセス修飾子 C# のアクセス修飾子 Sep 03, 2024 pm 03:24 PM

C# のアクセス修飾子のガイド。 C# のアクセス修飾子の種類について、例と出力とともに説明しました。

C# の素数 C# の素数 Sep 03, 2024 pm 03:35 PM

C# の素数ガイド。ここでは、C# における素数の導入と例を、コードの実装とともに説明します。

C# のパターン C# のパターン Sep 03, 2024 pm 03:33 PM

C# のパターンのガイド。ここでは、C# のパターンの概要と上位 3 種類について、その例とコード実装とともに説明します。

C# の階乗 C# の階乗 Sep 03, 2024 pm 03:34 PM

C# の Factorial のガイド。ここでは、C# での階乗の概要について、さまざまな例とコード実装とともに説明します。

See all articles