В Microsoft TFS, есть конструктор запросов следующим образом: Как реализовать построитель выражений в C++/QT, который похож на построитель запросов Microsoft TFS?
И я просил, чтобы реализовать функцию так же, как TFS построитель запросов в C++/QT. Но я даже не знаю, как это сделать.
В принципе, с этой функцией пользователь сможет установить условие для выполнения определенного действия при запуске нашего приложения. например:
// 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>
Я знаю, как реализовать интерфейс, но я не знаю, как интерпретировать выражение.
Есть ли открытая библиотека или блог об этой теме?
Любые мысли об этом ценятся.
Вы пытаетесь создать SQL для этого, чтобы вы могли запросить базу данных в Qt? – drescherjm
@drescherjm Нет, не имеет никакого отношения к SQL. – ricky
Как организованы данные? Почему это не в базе данных? – Yakk