有没有办法让 [incr Tcl] 类成为朋友?
有没有办法在 incr Tcl 中获得类之间的友谊?
考虑下面的代码。
package require Itcl
::itcl::class A {
private {
proc f { } {
puts "==== A::f"
}
}
}
::itcl::class B {
public {
proc g { } {
puts "==== want to be able to call A::f"
}
}
}
我希望 A::f
在 A
和 B
的函数之外不可见。我怎样才能实现这个目标?
Is there a way to obtain a friendship between classes in incr Tcl?
Consider the code below.
package require Itcl
::itcl::class A {
private {
proc f { } {
puts "==== A::f"
}
}
}
::itcl::class B {
public {
proc g { } {
puts "==== want to be able to call A::f"
}
}
}
I want A::f
to be invisible outside A
bur functions of B
. How can I achieve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Itcl不提供好友。
您可以通过使用
namespace inscope 构建调用来解决此问题
,就像这样:Itcl doesn't provide friends.
You can hack around this by constructing a call using
namespace inscope
, like so: