因此,我们假设我们有一个名为func
的CMake函数,该函数接受命名参数,比如NAMED1
和NAMED2
。第一个参数是必需的,第二个参数是可选的。例如
func(NAMED1 foo NAMED2 optional)
现在我有一个循环,需要在每次迭代时调用此函数func
,但根据当前的迭代,我有时需要提供可选值,有时不需要。所以在每次迭代中我都会建立一个参数列表,比如说
list(APPEND args "NAMED1" "foo")
if (...something...)
list(APPEND args "NAMED2" "optional")
endif()
所以我现在有args
列表。作为字符串,它可能看起来像
NAMED1;foo
或者看起来像
NAMED1;foo;NAMED2;optional
所以我想用字符串替换整个列表
string(REPLACE ";" " " args "${args}")
然后生成的args
看起来像
NAMED1 foo NAMED2 optional
所以我想把这个字符串传递给函数func
,带
func("${args}")
但现在问题是CMake认为这是一个大字符串,而它应该将其解释为单独的字符串。我怎样才能做到这一点?
答案 0 :(得分:4)
将我的评论转化为答案
只有$.fn.Example = function(input) {
for (var ev in input) {
if (dictionary.hasOwnProperty(ev)) {
$(document).on(ev, this, input[ev]);
}
}
};
$(document).ready(function(){
$("#test_input").Example({
keyup: function() {
// event function here
},
focusin: function() {
// event function here
},
focusout: function() {
// event function here
},
});
});
没有引号且无需替换func(${args})
应该有效。
过去我一直在使用它很多次(尤其是使用;
转发“其余参数”)。
<强>参考强>