Tag: 函数

C#将函数存储在Dictionary中

如何创build一个可以存储函数的字典? 谢谢。 我有大约30多个可以从用户执行的function。 我想能够这样执行function: private void functionName(arg1, arg2, arg3) { // code } dictionaryName.add("doSomething", functionName); private void interceptCommand(string command) { foreach ( var cmd in dictionaryName ) { if ( cmd.Key.Equals(command) ) { cmd.Value.Invoke(); } } } 然而,函数签名并不总是相同的,因此具有不同数量的参数。

Python中的函数链接

在codewars.com我遇到了以下任务: 创build一个函数add ,在连续调用时将数字相加。 所以add(1)应该返回1 , add(1)(2)应该返回1+2 ,… 虽然我熟悉Python的基础知识,但是我从来没有遇到过能够被调用的函数,也就是函数f(x)可以被称为f(x)(y)(z)… 到目前为止,我甚至不知道如何解释这个符号。 作为一个math家,我猜想f(x)(y)是一个函数,它赋给每个x函数g_{x} ,然后返回g_{x}(y) ,同样对于f(x)(y)(z) 。 如果这个解释是正确的,那么Python将允许我dynamic地创build对我来说很有意思的函数。 我在过去的一个小时里search了网页,但没能find正确的方向。 因为我不知道这个编程概念是如何被调用的,所以这可能不会太令人吃惊。 你怎么称呼这个概念,我在哪里可以阅读更多关于它的内容?

在表值函数中声明variables

我怎样才能在一个表值函数中声明一个variables?

C中的macros与函数

我在C编程 我总是看到使用macros比使用函数更好的例子和案例。 有人可以解释一个例子与一个函数比较macros的缺点吗?

Monads作为附件

我一直在阅读有关monad的分类理论。 单子的一个定义使用一对伴随函数。 单子是通过使用这些函数的往返来定义的。 显然附加类在分类理论中是非常重要的,但是我还没有看到Haskell monads在伴随函数方面的任何解释。 有没有人给它一个想法?

内联还有用吗?

我相信, inline已经过时了,因为我在这里读到: 无论你如何将函数指定为inline ,编译器都可以忽略这个请求:编译器可能会内联展开一些全部或者没有inline 。 然而, Angew似乎明白我不知道的事情。 在这个问题上,他和我之间来回转换,关于inline是否仍然有用。 这个问题不是一个问题: inline或inline的历史用法仍然可以用于暗示编译器inline函数: 何时应该为函数/方法编写关键字“内联”? 。 内联函数代码的好处或缺点: C ++中内联函数的好处? 强制编译器inline函数代码: 在其他翻译单元中强制内联函数 请记住,编译器可以随意inline ,因此inline inline在这里没有帮助: inline可以用来强制编译代码中的更改, 而不是build议更改。

Javascript:扩展function

我想要的主要原因是我想扩展我的初始化函数。 像这样的东西: // main.js window.onload = init(); function init(){ doSomething(); } // extend.js function extends init(){ doSomethingHereToo(); } 所以我想扩展一个function,比如我在PHP中扩展一个类。 我想从其他文件扩展它,所以例如我有main.js的原始init函数和extended.js中的扩展函数。

C中的“”(星号修饰符)是什么意思?

在试图实现一个C11parsing器(为了教育目的)时,我发现在C11(470页),但也在C99(412页) (感谢Johannes!), 直接声明符被定义为: (6.7.6) direct-declarator: direct-declarator [ type-qualifier-list? * ] 起初,我认为这是语法错误(types列表不应该是可选的)。 但是,当我在我的参考编译器(铿锵声)中尝试了这一点,我得到了一个意想不到的错误: int array[*] = { 1, 2, 3 }; // error: star modifier used outside of function prototype 很明显,(在叮当中)这叫做星形修饰符 。 我很快就了解到,他们只能用于function签名: void foobar(int array[*]) 但是,他们只能用在声明中。 试图在函数定义中使用它也会导致错误: void foobar(int array[*]) { // variable length array must be bound in function definition } 所以据我所知,预期的行为是在函数声明中使用[*] ,然后在函数定义中使用一个固定的数字。 // […]

静态关键字里面的函数?

我正在查看Drupal 7的源代码,并且发现了一些我以前没见过的东西。 我在php手册中做了一些初步的工作,但没有解释这些例子。 关键字static对函数内部的variables有什么作用? function module_load_all($bootstrap = FALSE) { static $has_run = FALSE

在JavaScript中声明函数

可能重复: Javascript:var functionName = function(){} vs function functionName(){} 这两种声明函数的方式有什么区别? function someFunc() { … } var someFunc = function() { … } 我不是在技术层面上问的。 我不是问可读性更好,还是更喜欢哪种风格。