2016-12-14 48 views
-1

在微軟TFS,有一個查詢生成器如下: enter image description here如何在類似於Microsoft TFS查詢生成器的C++/QT中實現表達式生成器?

而且我要求落實就像在C++/QT TFS查詢生成器功能。但我甚至不知道如何谷歌它。

基本上,有了這個功能,用戶將能夠建立我們的應用程序運行時執行特定的操作條件。例如:

// the condition will be set by user before run this application 
// and I want provide a UI similar to TFS query to user 
if (var_a >= 0 && (var_b + var_c) < 10) 
{ 
    prompt the warning dialog 
} 

這個條件(var_a >= 0 && (var_b + var_c) < 10)將被存儲爲如下XML:

<ConditionPair Operator="AND"> 
    <Condition Operator="GE"> 
     <LValue> 
      <Kind>Variable</Kind> 
      <Value>var_a</Value> 
     </LValue> 
     <RValue> 
      <Kind>Const</Kind> 
      <Value>0</Value> 
     </RValue> 
    </Condition> 
    <Condition Operator="LT"> 
     <LValue> 
      <Kind>Expression</Kind> 
      <Value> 
       <MathExp Operator="ADD"> 
        <LValue> 
         <Kind>Variable</Kind> 
         <Value>var_b</Value> 
        </LValue> 
        <RValue> 
         <Kind>Variable</Kind> 
         <Value>var_c</Value> 
        </RValue> 
       </MathExp> 
      </Value> 
     </LValue> 
     <RValue> 
      <Kind>Const</Kind> 
      <Value>10</Value> 
     </RValue> 
    </Condition> 
</ConditionPair> 

我知道如何實現UI,但我不知道如何解釋的表達。

是否有任何開源庫或博客的這個話題在網上提供?

這個任何想法表示讚賞。

+0

你們是不是要生成SQL這讓你可以在Qt查詢數據庫? – drescherjm

+0

@drescherjm不,與SQL無關。 – ricky

+0

數據如何組織?爲什麼它不在數據庫中? – Yakk

回答

0

我真的不知道我是否理解你,但也許你可以使用Qt Script 來解釋(解析)命令,然後採取行動。