私がしているのは、有限のアルファベットの文字列の形で生産規則を作成し、それを char 配列にコピーしてから、文字に応じて関数を呼び出す if ステートメントを実行することです。
functionL、functionF、functionF、functionOpenB、functionF、functionCloseBを呼び出す「lff[f]」など。
したがって、現在は次のとおりです。
workRuleArr= stringProdrule.toCharArray();
for (char c=0; c < workRuleArr.length; c++){
if (workRuleArr[c] == 'f')
{
functionF();
}
if (workRuleArr[c] == 'l')
{
functionL();
}
等
ただし、これは問題なく機能しています。
"l(100)ff .." などのプロダクション ルールからこれらの関数にパラメータを渡すにはどうすればよいですか?
また、同じプロダクション ルール文字列内に x のさまざまな値が存在する場合があります。ユーザーはプログラムの開始時に一度にルールを入力するため、同じ生産ルールで複数のパラメーターを処理する必要があります。
質問が明確でない場合は、私に知らせてください。ありがとう