C#のコマンドラインの分割コンパイルと実行について
コマンドラインでC#のプログラムをコンパイルと実行する方法
mainが1つでsubが1の場合は以下にある。
http://d.hatena.ne.jp/taka_2/20080124/p6
mainが1つでsubが2つの場合はコマンドはどうするか。
以下に使用したコマンドを示す
csc /target:library sub1.cs
csc /target:library sub2.cs
csc /R:sub1.dll /R:sub2.dll main1.cs
とすると
error CS0246: 型または名前空間名 'sub1' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。
のエラーメッセージが表示される。
わかっている方がおりましたら、教えて下さい。
以下にプログラムを示す。
//----------------------------------------------------------------------------
// mainファイルの内容
using System ;
using System.Text;
using System.IO;
using sub1 ; // subの名前空間を指定(分割コンパイル用)
using sub2 ; // subの名前空間を指定(分割コンパイル用)
namespace main1
{
class Program
{
static void Main(string[] args)
{
int a = 10 ;
int b = 5 ;
sub1.dfsub_cs1 df1 = new sub1.dfsub_cs1() ; // sub1のクラスを確保(分割コンパイル用)
sub2.dfsub_cs2 df2 = new sub2.dfsub_cs2() ; // sub2のクラスを確保(分割コンパイル用)
Console.Write("add {0,3:D} * {1,3:D} = {2,5:D}\n", a,b, df1.multiply( a, b) );
Console.Write("add {0,3:D} / {1,3:D} = {2,5:D}\n", a,b, df2.divide( a, b) );
return ;
}
}
}
//----------------------------------------------------------------------------
// sub1ファイルの内容
namespace sub1
{
public class dfsub_cs1
{
public int multiply(int a, int b )
{
return a * b ;
}
}
}
//----------------------------------------------------------------------------
// sub2ファイルの内容
namespace sub2
{
public class dfsub_cs2
{
public int divide(int a, int b )
{
return a / b ;
}
}
}
お礼
たびたび、ありがとうございます。 やってみます。