0
私は、.ccファイルの変数を使ってパケットを数えています。 今、私の.tclスクリプトでその値を取得し、それを変数に格納して、その上で何らかの操作を実行したいのですか? これはどのように可能ですか?ns2を使用している場合、どのように.ccファイルから.tclファイルに整数値を渡すことができますか?
私は、.ccファイルの変数を使ってパケットを数えています。 今、私の.tclスクリプトでその値を取得し、それを変数に格納して、その上で何らかの操作を実行したいのですか? これはどのように可能ですか?ns2を使用している場合、どのように.ccファイルから.tclファイルに整数値を渡すことができますか?
コードとTclのバインド方法に応じて、いくつかのオプションがあります。たとえば、Tcl_NewIntObj()
を使用して値をTclコマンドの引数として渡すことができるTcl値に変換するか、Tcl_LinkVar()
を使用してC++コードの変数を作成することができます(これは長期間使用する必要があります。多くの場合、グローバル)はTcl変数として自身を公開します。あなたはTcl_UnlinkVar()
カップリングを破るまで、あなたの変数から読み込みますTclの側にmyVarName
変数を読んで、それをやったら
// The interp is the interpreter context, which might come from Tcl_CreateInterp or might
// be handed to you by callback, depending on what you're doing.
Tcl_LinkVar(interp, "myVarName", (char *) &yourIntVariable, TCL_LINK_INT);
。
'Tcl_NewIntObj'は、値を引数として渡したり、Tcl変数に直接書き込んだりするためのものです。 –