Tcl: Interpreter creates copy of traced object whet it goes changed
问题 #include <tcl.h> #include <iostream> using namespace std; char* myTraceProc(ClientData clientData, Tcl_Interp* interp, const char* name1, const char* name2, int flags) { cout << "myTraceProc" << endl; //changing the object return NULL; } int main(int argc, char* argv[]) { Tcl_FindExecutable(argv[0]); Tcl_Interp *interp = Tcl_CreateInterp(); Tcl_TraceVar(interp, "database", TCL_TRACE_WRITES, myTraceProc, 0); return 0; } This is a part of my c++/tcl program. In fact it doesn't show the problem