在計算機程序設計,一個可變參數函數是指一個函數擁有不定引數,即是它接受一個可變數目的參數。不同的程式語言對可變參數函數的支持有很大差異。 一般而言,在設計函數時會遇到許多數學和邏輯操作,是需要一些可變功能。例如,計算數字串的總和、字符串的聯接或其他操作過程,都可以存在任意數量的參數。 另一種許多語言都實現為可變參數函數...
5 KB (703 words) - 06:19, 27 November 2022
可变参数宏是C语言与C++语言的函数宏的参数个数可以是0个或多个。这一语言特性由C99引入。C++11也开始支持。 声明语法类似于可變參數函數:逗号后面三个句点"...",表示一个或多个参数。但常见编译器也允许传递0个参数。宏扩展时使用特殊标识符__VA_ARGS__表示所传递的参数的替换。...
4 KB (402 words) - 08:20, 9 May 2022
reference)|按引用傳遞]]的細節規範則由函數的聲明以及定義中進行。 一般而言,參數出現在過程定義中,引數則出現在過程調用中。在函數f(x) = x*x的定義中,變量x是參數。在函數f(2)調用中,值2是該函數的引數。簡單而不太準確的概擴來說參數是類型,而引數是實作。 參數...
24 KB (3,437 words) - 07:59, 29 September 2023
可变参数模板是模板编程时,模板参数(template parameter)的个数可变的情形。 已经支持可变参数模板的编程语言有D语言与C++(自C++11标准)。 C++11之前,模板(类模板与函数模板)在声明时必须有 固定数量的模板参数。C++11允许模板定义有任意类型任意数量的模板参数。...
12 KB (1,685 words) - 21:10, 19 August 2021
省略号 (计算机编程) (section 可变数量参数)
Python3也允许3字符省略号作为以后插入代码的占位符。 C语言的可變參數函數的参数表中,3字符省略号表示更多的不能显式列出的参数。例如: int printf( const char* format, ... ); 上述函数可用不同数据类型和个数的实参来对应。例如: printf("numbers...
7 KB (864 words) - 08:33, 10 July 2022
在程序设计中,一个函数的缺省参数是指不必须指定值的参数。在大多数程序设计语言中,函数可以接受一个或多个参数。通常对于每个参数都需要指定它们的值(例如C语言)。一些较新的程序设计语言(例如C++)允许程序员设定缺省参数并指定默认值,当调用该函数并未指定值时,该缺省参数将为缺省值。 考虑如下函数声明: int...
4 KB (694 words) - 04:11, 7 July 2020
在函数式编程中,函数是头等对象即头等函数,这意味着一个函数,既可以作为其它函数的输入参数值,也可以从函数中返回值,被修改或者被分配给一个变量。λ演算是这种范型最重要的基础,λ演算的函数可以接受函数作为输入參數和输出返回值。 比起指令式編程,函數式編程更加強調程序执行的结果而非执行的过程,倡导利用若干简单的执...
25 KB (2,993 words) - 18:58, 15 December 2024
光速可變理論認爲光速(以c表示)是時空的函數,因此不是確定的數值。在經典物理學中,真空中的光速是一個常數,在國際單位制中被定義為c=299792458米/秒。經典物理學中光速可變可以在某些情形下出現,比如一些已確立理論的等價公式中,再如大多數非主流的引力和宇宙學理論裏。著名的光速可變...
26 KB (3,254 words) - 03:33, 4 July 2024
存取未命名的參數,首先必須在不定參數函式中宣告va_list型態的變數。呼叫va_start並傳入兩個參數:第一個參數為va_list型態的變數,第二個参数為函式的動態參數前面最後一個已命名的參數名稱,接著每一呼叫va_arg就會回傳下一個參數,va_arg的第一個參數為va_list,第二個參數...
8 KB (923 words) - 02:49, 27 September 2020
-> lambda函數的返回值為void []() { ++global_x; } // 沒有參數,僅僅是訪問一個全局變量 []{ ++global_x; } // 與前者相同,()可以被省略 在上面的第一個例子中這個無名函數的返回值是decltype(x+y)。如果lambda函數體的形式是return...
21 KB (2,634 words) - 19:05, 16 November 2024
在计算机科学中,纯函数式编程通常指示一种编程范型,这是建造计算机程序的结构和元素的一种风格,就是将所有计算都当作数学函数的求值(evaluation)。纯函数式编程还可以定义为禁用状态(英语:State (computer science))变更和可变数据。 纯函数式编程主要在于确保函数遵守函数...
10 KB (1,358 words) - 18:57, 15 December 2024
變數 (category 含有过时参数的引用的页面)
可變。 在數學领域中,一个變數可以代表“某個數據”,但也可用以表示:一个数、一个向量、一个矩阵、一个函数、一个函数的参数、一个集合或一个集合的元素等数学符号表达的内容。 变数常见的例子如:一個函數 y = f ( x ) {\displaystyle y=f(x)} 有兩個變數(參數 x {\displaystyle...
9 KB (1,160 words) - 05:05, 26 May 2024
函數一般都是使用不定型別。 在Visual Basic,一個函數的參數可以使用Optional關鍵字,把它設成一個可選的參數。當使用這個函數時可選參數沒有被傳入,那麼Visual Basic就會用一個叫Missing的特別數值取代被省略的參數。 Function GetText(Optional...
4 KB (481 words) - 01:12, 11 April 2022
热敏电阻 (section NTC熱敏電阻的參數)
\over T}=a+b\,\ln(R)+c\,(\ln(R))^{3}} 其中a、b和c稱為斯坦哈特-哈特參數,每個熱敏電阻有不同的參數,T是以開爾文表示的溫度,R是電阻,單位是歐姆,若要電阻以溫度的函數表示,可以整理為下式: R = e ( x − 1 2 y ) 1 3 − ( x + 1 2 y )...
9 KB (1,274 words) - 03:56, 15 May 2023
函数相同的功能。 映射有时被推广为接收二元的(2个参数)函数,它可以把用户提供的函数应用到来自两个列表的对应元素上。有些语言对它使用特殊名字,比如“map2”或“zipWith”。使用显式的可变元数函数的语言拥有可变元数版本的映射来支持可变元数函数...
21 KB (1,509 words) - 08:54, 15 May 2022
參數型別是一致的,亦即,參數型別之間的子型別關係被保持住了。 Action<Animal>是Action<Cat>的子型別,因為型別構造器Action<T>是逆變的(contravariant)。(在此,Action<T>被用來表示一個參數型別為T或sub-T的一級函數...
44 KB (6,226 words) - 05:12, 26 June 2024
unwind_protect_cleanup cleanup end_unwind_protect 可變長度參數表列: Octave提供用於處理未指明參數個數時的函式呼叫機制:利用特殊的varargin作為參數來呼叫函式。 function s = plus(varargin) if(nargin==0)...
11 KB (1,222 words) - 19:27, 11 October 2022
可变参数列表的实现,如printf()。 cdecl(C declaration,即C声明)是源起C语言的一种调用约定,也是C语言的事实上的标准。在x86架构上,其内容包括: 函数实参在线程栈上按照从右至左的顺序依次压栈。 函数结果保存在寄存器EAX/AX/AL中...
13 KB (2,275 words) - 23:39, 6 November 2024
Common Lisp (section 定義泛化函數及方法)
函數,也是類別的實例物件。 Common Lisp支援頭等函數(亦即函數可當成数据類型來處理)。例如編寫以其它函數當作一個函數的參數,或函數的傳回值也是函數,利用函數的結合來描述常用的操作。CL函式庫高度依賴於這樣的高階函數變換。舉例而言,sort函數可將關係運算子作為參數,並選用如何取鍵的函數...
66 KB (10,304 words) - 20:56, 14 September 2024
SuperCollider (category 使用未知软件信息框参数的页面)
垃圾回收、 单继承的面向对象和函数式编程语言, 它的语法类似LISP或者C语言。它的架构是在实时计算需求和抽象语言的灵活、简洁性之间的折衷。和许多函数式编程语言类似,它实现了函数作为一级对象,使得函数可以复合。函数和方法支持缺省参数、可变参数,调用时可以使用任意次序的关键词参数。 闭包 是词法的, 作用域...
6 KB (713 words) - 17:20, 17 May 2022
Kotlin (section 主构造函数 vs. 二級构造函数)
listOf("args: ", *args) println(list) } Kotlin支持函数嵌套(nested functions),允許函數内再定义函數,類似JavaScript、C#与Python语言。 class User( val id: Int, val name: String, val...
19 KB (2,112 words) - 22:20, 22 September 2024
有源帶通濾波器是直接根據帶通轉移函數設計的。為了從低通轉移函數獲得帶通的極點和零點,必須進行低通到帶通的變換。靈敏度可以用來衡量特定濾波器參數變化時的品質因數,或元件變化時的諧振頻率。除了因公差引起的誤差外,由於溫度、老化、濕度和其他環境條件的影響,元件會出現與其標稱值的偏差。這些變化會導致Q值和中心頻率等參數偏離設計值。...
5 KB (945 words) - 04:35, 24 June 2024
函数或算子上——求值策略定义何时和以何种次序求值给函数的实际参数,什么时候把它们代换入函数,和代换以何种形式发生。经常使用用来研究函数的形式系统λ演算来建模求值策略,这里它们通常叫做归约策略。求值策略分为两大基本类,严格的和非严格的,基于如何处理给函数的实际参数...
15 KB (2,346 words) - 03:29, 26 May 2024
可变引用(mutable reference)的子类型化类似于函数参数与返回值的处理。只写引用是逆变的;只读引用是协变的;可变引用是不变的。 在强制子类型化系统(coercive subtyping system),子类型通过从子类型到超类型的隐式类型转换函数得以定义。对于每个子类型关系 (S <: T),一个强制关系coerce:...
9 KB (1,356 words) - 03:55, 7 February 2021
11除了能定義型別安全的不定長引數函式外,還能讓类似printf的函式能自然地處理非內建型別的物件。除了在模板參數中能使用...表示不定長模板參數外,函數參數也使用同樣的表示法代表不定長參數。 template<typename... Params> void printf(const std::string...
113 KB (16,209 words) - 07:02, 18 August 2024
本文总结了已知公开的针对密碼雜湊函數的攻击。请注意,此列表可能不及最新研究成果新。有关其他参数的摘要,请参阅密码散列函数比较(英语:Comparison of cryptographic hash functions)。 没有攻击——攻击只能用于散列函数的一个简化版本,或攻击复杂性比散列自身声明的最低值还高...
20 KB (1,150 words) - 08:39, 11 October 2020
Lisp提供了函数remove-if和remove-if-not。Scheme实现要求(英语:Scheme Requests for Implementation)(SRFI)1提供了Scheme语言过滤器的一个实现。C++提供了算法(英语:Algorithm (C++))remove_if(可变...
15 KB (883 words) - 09:24, 12 May 2022
Rust (category 函数式编程语言)
以不用宣告型別,亦不需要初始值來推斷型別。但如果在稍後的程式中從未指派任何值到該變數,編譯器會發出編譯時(compile time)錯誤。函數可以使用泛型化參數(generics),但是必須綁定Trait。不能使用方法或運算子而不声明它們的型別,每一項都必確明確定義。...
31 KB (3,083 words) - 18:46, 13 November 2024
Python語法及語義 (section 函數式編程)
塊內縮進代碼,使其在視覺上能與周圍的代碼區明白的區分開來。 一個名為foo的遞迴函數,它傳遞一個參數x,如果參數為0,僅呼叫bar這個函數;否則將呼叫不同的名為baz的函數,傳遞參數x,並遞迴呼叫自身,傳遞 x-1為參數 , 這都可以在 Python 中實現的演算: def foo(x): if x...
32 KB (3,727 words) - 14:15, 20 January 2023
存储传递风格 (category 函数式编程)
存储传递风格是一种技术,用来建模可变状态(英语:State (computer science))而不用使用全局变量。它通常出现在将指令式程序转换成纯函数式程序的场合。 考虑如下这个用“非存储传递风格”书写的JavaScript程序: var lastWasA = false // treebin表示字符串的二叉树。...
3 KB (357 words) - 17:16, 17 March 2022
模板的模板参数(template template parameter)是指C++语言程序设计中,一个模板的参数是模板类型。只有类模板允许其模板参数是模板类型;函数模板不允许具有这样的模板参数(此处有争议)。 模板的模板参数可以有默认值。例如: template <class T = float>...
5 KB (813 words) - 06:03, 7 August 2020