公众号

扫码关注公众号

客服微信号

咨询客服微信号

返回顶部
热门分类
  • 指标
  • EA
  • 模板
  • 外汇
  • 黄金
  • 学院
  • 发帖数4682
  • 粉丝30

此人很懒,什么也没有留下

所属组:管理员
用户等级:
注册时间:2017/04/25
手机:未填写电话号码
邮箱:16479791179@qq.com
简介:这个人很懒,什么也没有留下
热门排行榜
  • 本周热榜
  • 本月热榜

MQL4语言编程培训9:MQL4函数概念

[复制链接]
外汇学院 显示全部楼层 发表于 2018-1-19 22:58:51 |阅读模式 打印 上一主题 下一主题
MQL4语言编程培训9:MQL4函数概念
8 E2 Y8 b0 ~( R( G# _4 r
; n* n1 H6 h0 QMQL4语言编程培训9:MQL4函数概念  e: c% A0 t* P; Z1 h5 P9 O
1 [1 }- W& A- [% E9 u1 {  I# T. R
函数是一段已命名的程序,它可以从程序任一部分多次调用。它是由函数返回值的类型说明、函数名称、形式参数和语句块组成。传递参数的个数被限定在64个之内。$ _9 t* \' L( q4 {+ R
示例:* w$ t( e; w$ ]1 F  J
7 _9 c, }& q3 u$ s, J
double                       // 返回值的类型
0 o# i6 o9 f4 g" W! H) H. }linfunc (double x, double a, double b) // 函数名称和参量列表' H$ y1 l" I" g5 C, F
{! a1 v0 t" K- \( V  p
                             // 语句块7 [' B+ d- E8 H. t7 @: }
   return (a + b);           // 返回表达式值  a+ L& t5 ~7 [. d2 w; F1 ^; s# {
}
4 D1 B4 Y: M" G+ M: \* preturn语句可以返回函数内表达式的值。如有必要,表达式值的类型可以转换为函数结果类型。没有返回值的函数必须定义成 “void” 型。- p0 I$ K2 t; u8 E/ @

2 O' u7 X6 S+ J示例:& u, z: t9 N# x' f
& J$ s! M$ s  N
void errmesg(string s)0 G  e2 {& R6 @$ x% z& f
  {
. ~$ A& S/ q  i# }+ k# k4 n1 D' h   Print("错误: "+s);
* [( [- k- c' Y! X  }8 A  d4 A- k: r& p
函数的参数可能存在默认值,这些默认值是用相应类型常量定义的。, [+ S8 i, P1 X7 I& t

8 k) w8 j: }+ C; n3 \$ m' \# j示例:
) X8 |) k* }8 v* v# K7 e# k/ P3 O' F; a# f" d6 j8 ]
int somefunc(double a, double d=0.0001, int n=5, bool b=true, string s="passed string")1 o4 h$ m8 q; _# h
  {
8 ]" V% L1 Q8 z2 a6 j9 m9 H   Print("需求参量 a=",a);# K) [6 F" U: x) ]: `" f
   Print("下列参量被传送: d=",d," n=",n," b=",b," s=",s);$ U3 r. k+ M  |, l; n
   return (0);6 J# J& F2 R9 R* r8 F$ u  u( j+ X
  }
3 c6 I; }9 T0 ^' l$ X& T7 r" W- Z如果为某个参数指定了默认值,那么所有后续的参数也必须指定默认值。
7 Z. M7 [/ ?% R, N5 P) t  q7 p) C# s
错误范例:
* \3 g' [5 o9 U; g2 d; M# j. z" f
int somefunc(double a, double d=0.0001, int n, bool b, string s="passed string")- e+ R* A. d2 z2 {% }) U
  {
6 Y0 \  z8 J: J2 A$ h# S0 q  }/ r' F: X, q; [0 Z' {% ^
函数调用$ B; ?! W- G# m8 E$ @- J* [/ H+ e
如果在表达式前出现一个曾未用过的名字,又后跟一个左括号,在上下文环境中它将被视作函数的名字。9 j) {! X: g# b
) N( D. z: @) A2 k' D7 a
函数名称 (x1, x2,..., xn)
* B7 W6 B0 A- Y函数自变量(形式参数) 按值的方式传递,也就是说,先计算每一个表达式xl,…,xn的值,再将其值传递给函数,表达式计算顺序及其值的传递要确保无误。在执行期间,系统将检查 那些提供给函数的值和参数的类型。这种形式的函数调用被称为“值传递”。调用函数是为了获得函数返回的表达式值。函数的定义类型必须符合函数返回值的类 型。在全局层次,我们可以在程序的任何位置定义和说明函数,即要在其他函数之外定义,在函数之内,不能定义或说明另一个函数。  F$ C# n% @# }/ ?) n

5 ^5 t  O$ C2 c+ u$ T- I% K* V( C1 ^' h
518外汇网--是一家专门提供外汇交易免费学习的专业化外汇交易论坛、外汇开户如何炒外汇,外汇培训,外汇学习,提供外汇交易教程外汇视频教程,外汇基础知识,外汇交易策略.炒外汇工具,外汇技术指标分析,外汇赠金活动,十大外汇平台,外汇投资高手,外汇技术面分析技巧,外汇基本面分析技巧,黄金分析软件,主要是以公平公正的角度传达做外汇需要的心态 技巧,免费共享各种外汇交易投资策略,提供新鲜的外汇交易资讯和公平,透明的外汇交易平台。MQL4语言编程培训9:MQL4函数概念.
# g' A. [! n' @% X, O* I! s0 @9 @# L
518财经网(www.518waihui.com)立志成为全球最大的中文专业外汇论坛。为用户提供最快最全面的资讯服务,提供稳定实用的外汇交易软件系统及完善的培训教学,帮助投资者实现信息对称,让更多的投资者了解和参与外汇黄金市场。立志成为外汇论坛中的黑马网站。商务合作QQ:1967038611

★★★ 或者升级到“VIP等级”:可任意发帖+无限制金币+所有资源无限制下载。   联系管理员(微信:15000043492 )或者加QQ:1967038611 升等级!★★★
回复

使用道具 举报

精彩评论1

贵州论坛 显示全部楼层 发表于 2019-8-6 20:11:52
大家有什么好看法,赶快说说
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则