我用Python 问了同样的问题.
现在我想知道这是否可以在AS3中完成.
如果我有这样的事情:
package { public class SomeClass { private function A():void { C() } private function B():void { C() } private function C():void { // who is the caller, A or B ??? } public function SomeClass() { A() B() } } }
尽管存在设计或其他问题,但这只是一个探究性思维的问题.
注意:我喜欢访问调用函数的实例,所以我可以调用该调用函数(如果我想)
function C()
签名的情况下完成
小智.. 5
"与以前版本的ActionScript不同,ActionScript 3.0没有arguments.caller属性.要获取对调用当前函数的函数的引用,必须将对该函数的引用作为参数传递."
来自http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/arguments.html
这是你能做到的唯一方法,否则你需要创建一个全局变量来告诉调用C的函数
"与以前版本的ActionScript不同,ActionScript 3.0没有arguments.caller属性.要获取对调用当前函数的函数的引用,必须将对该函数的引用作为参数传递."
来自http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/arguments.html
这是你能做到的唯一方法,否则你需要创建一个全局变量来告诉调用C的函数