示例#1
0
        public double Subtract()
        {
            var value = FirstNumber - SecondNumber;

            ResultsCache.Remember(value);
            return(value);
        }
示例#2
0
        public double Multiply()
        {
            var value = FirstNumber * SecondNumber;

            ResultsCache.Remember(value);
            return(value);
        }
示例#3
0
        public double Add()
        {
            var value = FirstNumber + SecondNumber;

            ResultsCache.Remember(value);
            return(value);
        }
示例#4
0
        public static void RunMemento()
        {
            var simpleCalc = new SimpleCalculator();

            simpleCalc.FirstNumber  = 20;
            simpleCalc.SecondNumber = 10;

            Console.WriteLine("Add: " + simpleCalc.Add());
            Console.WriteLine("Subtract: " + simpleCalc.Subtract());
            Console.WriteLine("Multiply: " + simpleCalc.Multiply());
            Console.WriteLine("Manual Divide: " + ResultsCache.GetCachedResult(0) / ResultsCache.GetCachedResult(2));
        }
示例#5
0
        public double Divide()
        {
            if (Math.Abs(SecondNumber) <= 0.0)
            {
                ResultsCache.Remember(double.NaN);
                return(double.NaN);
            }
            var value = FirstNumber / SecondNumber;

            ResultsCache.Remember(value);
            return(value);
        }