我現在正在製作一個簡單的字節碼解釋器,它使用RPN表達符號和真正的後綴表示法,但現在我的問題是:短路評估實際上可以用於後綴表達式?例如,在評估表達式時(錯誤的& &(factorial(7)> factorial(5)))C++知道運算符在兩個操作數上的結果甚至到達第二個操作數之前的結果爲false,因爲(false & &什麼)總是等於假。現在,當你把它放在RPN中時,你會得到(假(7階乘5階乘>)& &)。RPN短路評估
我想構建一個高效的RPN表達式解析器,所以問題是這樣的:我如何製作一個高效的RPN表達式解析器並進行短路評估?
您可以編寫代碼。我們不是爲你設計你的系統,或是教你如何設計它。 –
@MarcB感謝您提供的信息。無論如何,我確實得到了一個有用的答案,所以是的。 –
RPN和postfix符號是相同的東西,而不是兩個不同的東西。您不會將RPN解析器構建到解釋器中。輸入已被解析並可以線性處理。如果你想短路評估,你需要引入分支。 – EJP