CalculatorLib项目
- 新建类库项目
- 删除项目中的默认类
- 添加类Calculation.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Calculator
{
public abstract class Calculation
{
public Calculation(double num1,double num2)
{
this.DouNum1 = num1;
this.DouNum2 = num2;
}
public double DouNum1 { get; set; }
public double DouNum2 { get; set; }
public abstract double YunSuan();
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Calculator
{
public class Add : Calculation
{
public Add(double num1, double num2) : base(num1, num2)
{
}
public override double YunSuan()
{
return this.DouNum1 + this.DouNum2;
}
}
}
- 重新生成解决方案
- 在项目文件夹中可找到生成的.lib文件
Caculator项目
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Calculator;
namespace Caculate
{
class Program
{
static void Main(string[] args)
{
try
{
Console.WriteLine("请输入第一个数:");
double num1 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("请输入第二个数:");
double num2 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("请输入运算符:");
string opt = Console.ReadLine();
Calculation cal = GetResult(num1,num2,opt);
if(cal!=null)
{
double result = cal.YunSuan();
Console.WriteLine(result);
}
Console.ReadKey();
}
catch(Exception e)
{
}
}
private static Calculation GetResult(double num1, double num2, string opt)
{
Calculation cal = null;
switch(opt)
{
case "+":
cal = new Add(num1, num2);
break;
}
return cal;
}
}
}