SyntaxAnalyse/TokenRecord/Symbol/Arithmetic/TokenPlus.cs

(完整代码) 1KB

//xxxxxxxxxxx
using System;
using System.Collections.Generic;
using System.Text;

namespace ConExpress.Calculator
{
    public class TokenPlus : TokenArithmeticSymbol
    {
        public TokenPlus(int Index, int Length)
            : base(Index, Length)
        {
        }
        
        protected override void SetPriority()
        {
            this.m_Priority = 2;
        }

        public override void Execute()
        {
            this.CheckChildCount("加法的运算元素数量不合法");

            TokenRecord TokenFirst = this.ChildList[0];
            TokenRecord TokenSecond = this.ChildList[1];
            TokenFirst.Execute();
            TokenSecond.Execute();

            this.TokenValueType = ((TokenFirst.TokenValueType == TokenSecond.TokenValueType) ? TokenFirst.TokenValueType : typeof(string));

            if (this.TokenValueType == typeof(string))
            {
                this.TokenValue = TokenFirst.ChangeTokenToString() + TokenSecond.ChangeTokenToString();
            }
            else
            {
                this.TokenValue = TokenFirst.ChangeTokenToDouble("无法转换为数字。") + TokenSecond.ChangeTokenToDouble("无法转换为数字。");
            }
        }
    }
}

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。