【发布时间】:2014-08-25 12:23:55
【问题描述】:
我正在尝试使用 SWIG 将旧的 Tcl 接口替换为 C++。这是一个示例类:
class test {
std::string str;
public:
test(const char * s):str(s) {}
void print() const {std::cout << str << std::endl;}
};
这是使用它的标准方法:
load ./example.so example
test s "this is a test string"
s print
但我想保留不使用"" 的旧界面的简单性。我发现我可以这样做:
load ./example.so example
proc TEST {args} { test [lindex $args 0] [lrange $args 1 end] }
TEST s2 this is another test string
s2 print
这看起来很简单而且工作完美,但是,当然,我不能在用户脚本中定义proc。我不确定我还能把它放在哪里。有没有办法把它放在 .i 文件中?
【问题讨论】: