标签: invocation

为什么语法`&name arg1 arg2 ...`不能用来调用Perl子程序?

对于Perl子例程,如果传递0参数,我可以使用4个表单来调用它.但是如果传递一个或多个参数,有一个我不能使用的表单,请看下面:

sub name
{
    print "hello\n";
}
# 4 forms to call
name;
&name;
name();
&name();

sub aname
{
        print "@_\n";
}
aname "arg1", "arg2";
#&aname "arg1", "arg2"; # syntax error
aname("arg1", "arg2");
&aname("arg1", "arg2");
Run Code Online (Sandbox Code Playgroud)

错误输出是

String found where operator expected at tmp1.pl line 16, near "&aname "arg1""
    (Missing operator before  "arg1"?)
syntax error at tmp1.pl line 16, near "&aname "arg1""
Execution of tmp1.pl aborted due to compilation errors.
Run Code Online (Sandbox Code Playgroud)

有人可以从编译器的角度解释错误输出吗?我不明白为什么抱怨缺少操作员.

谢谢

syntax perl invocation subroutine

8
推荐指数
1
解决办法
89
查看次数

使用列表中的名称调用Scheme函数

是否可以仅使用可用的函数名称作为列表中的字符串来调用Scheme函数?

(define (somefunc x y)
  (+ (* 2 (expt x 2)) (* 3 y) 1))

(define func-names (list "somefunc"))
Run Code Online (Sandbox Code Playgroud)

然后调用somefunc (car func-names).

evaluation scheme function invocation

7
推荐指数
1
解决办法
2265
查看次数

为什么这种函数调用在JavaScript中是错误的?

我想创建一个匿名函数,然后立即调用它.

1)这将带来语法错误.为什么?

function ()
{
    alert("hello");
}();
Run Code Online (Sandbox Code Playgroud)

2)用()包装函数定义并且它可以工作.

(function ()
{
    alert("hello");
})();
Run Code Online (Sandbox Code Playgroud)

3)或者,将匿名函数分配给变量.有用.

var dummy = function()
{
    alert("hello");
}();
Run Code Online (Sandbox Code Playgroud)

为什么第一种方式不起作用?

javascript function invocation

5
推荐指数
1
解决办法
335
查看次数

重载方法优先级

我有一个名为Element的基类.其他一些类(如Label和Image)都扩展了这个类.

我现在有一个调度类,有以下方法:

public class Dispatcher {
    public static AbstractPropertyEditor<Label> createEditor(Label e) {
    ...
    }

    public static AbstractPropertyEditor<Element> createEditor(Element e) {
    ...
    }
}
Run Code Online (Sandbox Code Playgroud)

如果现在我有一个Label实例(扩展了Element)并且我想将它传递给createEditor(),为什么最通用的方法(第二个)被调用?调用最具体的方法(createEditor(Label e))是不正常的?

我绝对需要使用Element-param的方法来"捕获"a)实现Element但在此调度类中没有自己的特定方法的所有类.

我正在使用Java 6,如何"修复"这个?

编辑:好的,我不得不承认它根本不是关于泛型.但那是我第一次遇到它的地方.

感谢致敬

java overloading invocation

5
推荐指数
1
解决办法
1809
查看次数

通过Invocation API获得的JNI对象引用:本地还是全局?

我正在使用JNI调用API,它在C程序中启动JVM; 在这种情况下,您将获得一个JNIEnv指针,该指针在您明确销毁JVM之前一直有效.本地/全球的区别是否仍然适用于此?由于JNIEnv始终保持在范围内,因此对新创建的对象的本地引用的含义是什么?

java-native-interface reference invocation

5
推荐指数
1
解决办法
656
查看次数

哪些环境变量会影响“java”二进制文件?

大多数 unix 命令的操作根据环境变量的值而变化,在其手册页中都有一个“环境变量”部分。对于 java 二进制文件(Sun/Oracle Java 6)来说就没有这样的运气了,尽管我相当确定像 CLASSPATH 和 JVM_OPTS 这样的东西会产生影响。

任何人都可以向我指出影响“java”二进制文件的环境变量列表吗?

java environment-variables invocation

5
推荐指数
1
解决办法
603
查看次数

在c ++/c中使用JAR文件

可能重复:
如何在C++应用程序中访问Java方法

我需要在c ++程序中使用JAR文件.即从c ++我需要调用java函数,例如,在java中有一个接受2整数并返回其中的函数,现在我需要从c ++调用这个函数.请指导我提前谢谢.

c c++ java invocation

5
推荐指数
1
解决办法
1万
查看次数

在 C 函数的参数中声明变量

我有一个奇怪的愿望;我不知道是否有任何编译器或语言扩展允许这样做。

我希望能够在函数调用中声明变量,如下所示:

int test(int *out_p) {
    *out_p = 5;
    return 1;
}

int main()
{
    if (int ret = test(int &var)) { // int var declared inside function invocation
        fprintf(stderr, "var = %d\n", var); // var in scope here
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

因为 var 的作用域遵循 ret 的作用域。另一个例子(来自我现在正在进行的一个项目),我有

cmd_s = readline();
int x, y, dX, dY, symA, symB;
if (sscanf(cmd_s, "placeDomino:%d %d atX:%d y:%d dX:%d dY:%d",
                           &symA, &symB, &x,  &y,   &dX,  &dY) == 6) {
    do_complicated_stuff(symA, symB, x, y, dX, …
Run Code Online (Sandbox Code Playgroud)

c variables declaration function invocation

5
推荐指数
2
解决办法
1万
查看次数

确保C#中的多播委托执行列表顺序?

在做了一些阅读后,我理解处理程序调用顺序与订阅顺序相同但不保证.

所以我要说:

public event MYDEl ev;
Run Code Online (Sandbox Code Playgroud)

和订阅者:

ev+=GetPaper;
ev+=Print;
ev+=EjectPaper;
Run Code Online (Sandbox Code Playgroud)

保留+确保执行列表顺序的最佳实践机制是什么?

.net c# events invocation

5
推荐指数
1
解决办法
2025
查看次数

尝试将 X-Amz-Invocation-Type:Event 添加到现有 API Gateway POST 方法

首先,基本问题 - 是否有一种简单的方法可以将 HTTP 标头添加X-Amz-Invocation-Type:'Event'到具有集成类型 Lambda 函数的现有 API 网关 POST 方法,以便我可以轻松地从现有端点启动异步 Lambda?

现在背景...

我有一个带有 POST 方法的 API 网关,集成类型Lambda 函数通过 curl 和 Javascript 对我来说效果很好,除了 29s API 超时。

通过一些搜索,我想我已经了解到设置 HTTP 标头 X-Amz-Invocation-Type:'Event' 是让我的 Lambda 函数异步运行所需要的。

我已经看到建议通过控制台并使用AWS 服务集成类型,然后添加标头以及映射模板等,这比我真正想尝试的要复杂得多(也许我没有一个选择?)。我试过了,但我“认为”我最终不得不处理映射模板,而且我有一个非常复杂的有效负载 - 真的有这么难吗?

我还看到了使用两个 Lambda 的建议,第一个通过 API 触发并且是同步的,然后触发异步一个。我知道如何做到这一点,它确实有优势(但也增加了复杂性),但我现在把它放在一边。

我读了一篇“暗示”可以通过 CLI 添加这个新 HTTP 标头的帖子。我已经对aws.apigateway.put_method()等东西进行了一些反复试验,但我有点在黑暗中拍摄。我喜欢认为有一种简单的方法可以做到这一点,但到目前为止,解决方案一直在回避我。

api lambda header http invocation

4
推荐指数
2
解决办法
2946
查看次数