标签: argument-passing

你能用一个链接调用一个servlet吗?

你能用一个链接调用一个servlet吗?例如

<a href="/servletName">link text</a>
Run Code Online (Sandbox Code Playgroud)

并且可能通过将参数添加到查询字符串来将参数传递给请求对象.

如果没有,我看到了这样的事情:

RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(/MyServlet); 
dispatcher.include(request,response); 
Run Code Online (Sandbox Code Playgroud)

但是我该如何触发呢?例如,如果它是JavaScript代码,我可以将它放在jQuery单击函数中,或者如果这是一个servlet,我会将它放入一个方法中.

但是如何在JSP中调用此代码.据我所知,你不能用JavaScript事件调用Java代码.

javascript java jsp servlets argument-passing

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

C++中函数参数与(const int&)和(int&a)的区别

我知道如果你编写void function_name(int&a),那么函数将不会对作为参数传递的变量进行本地复制.你还应该在文献中遇到你应该编写void function_name(const int&a)以便说编译器,我不希望复制传递给参数的变量.

所以我的问题是:这两种情况有什么不同(除了"const"确保传递的变量不会被函数改变!!!)???

c++ reference function argument-passing

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

在wpf应用程序中使用process.start来调用另一个wpf应用程序

我试图从另一个wpf应用程序调用一个wpf应用程序.调用wpf应用程序进行调用

ProcessStartInfo BOM = new ProcessStartInfo();

BOM.FileName = @"D:\WPFAPPLICATION.exe";

BOM.Arguments = temp;

Process.Start(BOM);
Run Code Online (Sandbox Code Playgroud)

现在在调用的应用程序中,我尝试检索传递的参数

  string arguments =Process.GetCurrentProcess().StartInfo.Arguments;
Run Code Online (Sandbox Code Playgroud)

但是参数没有通过.为什么是这样??

我还尝试了一种替代方法,其中:

    public partial class App : Application
    {
    public static String[] mArgs;

    private void Application_Startup(object sender, StartupEventArgs e)
    {

        if (e.Args.Length > 0)
        {
            mArgs = e.Args;


        }
    }
    }
    }
Run Code Online (Sandbox Code Playgroud)

然而,这也不起作用!请帮忙!!

c# wpf process calling-convention argument-passing

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

如何在JavaScript中取消或添加到arguments对象的开头

我刚刚学会了弹出arguments数组的第一个元素惯例(我也学到了它实际上是一个Object).现在我需要做相反的事情.我需要使用一个unshift操作将值添加到arguments数组的开头(或Object像数组一样).这可能吗?我试过了:

Array.prototype.unshift.apply('hello', arguments);
Run Code Online (Sandbox Code Playgroud)

这对arguments任何事都没有影响.

javascript arrays arguments argument-passing javascript-objects

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

Perl如何在我的子例程中利用块参数(比如grep一样)

可以通过以下两种方式调用grep.我正好错过了一条信息来理解这块魔法.也许一个好的灵魂可以向我解释grep internal如何获取对块的引用并处理它甚至更好我如何编写使用bock表示法的子例程.

1)这是我认为的传统方式.grep EXPR,列表示例:@foo = grep(!/^#/, @bar); 2)这对我很好,但很神奇但很神奇.grep BLOCK LIST示例:@foo = grep {!/^#/} @bar;

提前谢谢了.

BR /赫尔曼

perl function block argument-passing

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

扩展Lua:检查传递给函数的参数数量

我想创建一个新的Lua函数.

我可以使用带参数的函数(我正在关注此链接)以读取函数参数.

static int idiv(lua_State *L) {
  int n1 = lua_tointeger(L, 1); /* first argument */
  int n2 = lua_tointeger(L, 2); /* second argument */
  int q = n1 / n2; int r = n1 % n2;
  lua_pushinteger(L, q); /* first return value */
  lua_pushinteger(L, r); /* second return value */
  return 2; /* return two values */
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否有办法知道传递给函数的参数数量,以便在用户不使用两个参数调用函数时打印消息.

我想在用户写入时执行该功能

idiv(3, 4)
Run Code Online (Sandbox Code Playgroud)

并在打印时出错

idiv(2)
idiv(3,4,5)
and so on...
Run Code Online (Sandbox Code Playgroud)

c c++ lua arguments argument-passing

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

7
推荐指数
2
解决办法
9万
查看次数

如何通过R中的包装函数传递函数及其参数?类似于python中的*args和*kwargs

我想在R中编写一个包装函数.我应该使用一个函数及其参数.执行某些操作,然后使用提供的参数调用该函数.

我知道如何在python中做到这一点,但我在R中搜索一个实现.在python中我会写:

def wrapper(func, *args, **kwargs):
    #do something here
    return func(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)

python r argument-passing

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

bash字符串引用了多字args到数组

问题:

在bash脚本编写中,将包含多个单词的文字引号的字符串转换为具有相同解析参数结果的数组的最佳方法是什么?

争议:

存在许多问题,都是采用规避策略来避免问题而不是寻找解决方案,这个问题提出了以下论点,并希望鼓励读者关注论点,如果你愿意接受它,就要参与挑战,找到最佳选择.解.

提出的论点:

  1. 虽然有许多情况应该避免这种模式,因为存在更适合的替代解决方案,但作者认为仍然存在有效的用例.这个问题将尝试产生一个这样的用例,但不要仅仅认为它是可以想象的场景,它可能出现在现实世界的情况中.
  2. 您必须找到满足要求的最佳解决方案.该用例是专门针对其实际应用而选择的.您可能不同意所做出的决定,但并不负责仅提供解决方案的意见.
  3. 在不修改输入或选择运输的情况下满足要求.两者都是通过现实场景特别选择来捍卫这些部分不受你控制的叙述.
  4. 特定问题没有答案,这个问题旨在解决这个问题.如果您倾向于避免这种模式,那么只需避免这个问题,但如果您认为自己已经接受了挑战,那么请看看您将如何解决问题.

有效用例:

转换当前正在使用的现有脚本,以通过命名管道或类似流接收参数.为了最大限度地减少对开发人员控制之外的无数脚本的影响,决定不更改接口.现有脚本必须能够像以前一样通过新流实现传递相同的参数.

现有实施:

$ ./string2array arg1 arg2 arg3
args=(
    [0]="arg1"
    [1]="arg2"
    [2]="arg3"
)
Run Code Online (Sandbox Code Playgroud)

要求的变更:

$ echo "arg1 arg2 arg3" | ./string2array
args=(
    [0]="arg1"
    [1]="arg2"
    [2]="arg3"
)
Run Code Online (Sandbox Code Playgroud)

问题:

正如Bash和Double-Quotes所指出的那样,传递给argv的文字引号不会像预期的那样被解析.

此工作台脚本可用于测试各种解决方案,它处理传输并制定可测量的响应.建议您专注于使用字符串作为参数获取的解决方案脚本,并且应该将$ args变量填充为数组.

string2array工作台脚本:

#!/usr/bin/env bash
#string2arry

args=()

function inspect() {
  local inspct=$(declare -p args)
  inspct=${inspct//\[/\\n\\t[}; inspct=${inspct//\'/}; inspct="${inspct:0:-1}\n)"
  echo -e ${inspct#*-a }
}

while read -r; do
  # source the solution to turn $REPLY in $args array
  source $1 "${REPLY}" …
Run Code Online (Sandbox Code Playgroud)

arrays string bash arguments argument-passing

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

R函数中的默认参数(形式参数由多个实际参数匹配)

简单的问题,我希望.我想编写一个绘图函数,如果用户没有指定,则该函数具有y轴标签的默认值.我还想允许...其他绘图参数的参数,并允许用户ylab手动设置.但我无法弄清楚如何做到这一点.

# simple scatterplot function with a default ylab
scatter <- function(x,y, ...) {
    plot(x, y, ylab="Default y-axis label", ...)
}

# generate data
x <- rnorm(100)
y <- x+rnorm(100)

# use the default
scatter(x,y)

# here I want to use my own label, but I get an error!
scatter(x, y, ylab="New y-axis label")
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

Error in plot.default(x, y, ylab = "Default y-axis label", ...) : 
  formal argument "ylab" matched by multiple actual arguments 
Run Code Online (Sandbox Code Playgroud)

我理解这个问题,但我不知道修复它的最佳方法.谢谢您的帮助!

编辑: …

r function argument-passing

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