公众号

扫码关注公众号

客服微信号

咨询客服微信号

返回顶部
热门分类
  • 指标
  • EA
  • 模板
  • 外汇
  • 黄金
  • 学院
所属组:管理员
用户等级:
注册时间:2017/04/25
手机:未填写电话号码
邮箱:16479791179@qq.com
简介:这个人很懒,什么也没有留下
热门排行榜
  • 本周热榜
  • 本月热榜

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

[复制链接]
外汇学院 显示全部楼层 发表于 2018-1-19 22:58:51 |阅读模式 打印 上一主题 下一主题
MQL4语言编程培训9:MQL4函数概念
" j- L# M7 H' C1 z! m
  b9 k8 P  P! l  _* y. M( |MQL4语言编程培训9:MQL4函数概念
. d( z* y8 P1 j" t; i9 B8 k
5 o7 G9 [* V$ j函数是一段已命名的程序,它可以从程序任一部分多次调用。它是由函数返回值的类型说明、函数名称、形式参数和语句块组成。传递参数的个数被限定在64个之内。$ E$ M0 E+ v# X# x/ i; \
示例:3 R6 V6 O: c2 G& O4 J' Q9 m( W6 E2 R

' `7 t: ?% C5 Z& o6 c# o7 W& |9 ldouble                       // 返回值的类型$ d4 g9 \! r3 m
linfunc (double x, double a, double b) // 函数名称和参量列表
5 A* y8 x% E5 b+ p# S- a/ I{
0 F' T( i  }* J  A# U                             // 语句块
# b& s5 L. o* c7 z   return (a + b);           // 返回表达式值
8 Q3 B" E: N+ K# X0 Q$ E}
" R5 M% _2 ]' A" p2 h1 J, P1 M' h+ s' wreturn语句可以返回函数内表达式的值。如有必要,表达式值的类型可以转换为函数结果类型。没有返回值的函数必须定义成 “void” 型。
7 ^" N# u9 Q( ~/ P5 }8 [& ~( T8 {( L  s
示例:% }' _4 j4 T4 h! I

0 q8 g8 r  u% Q3 {: O" O% ]void errmesg(string s)
  J9 Q+ w& e/ ^( B( v! R( U. ?5 \  {
: Y: y# Q! U7 [/ Y' {   Print("错误: "+s);
3 S. F* W9 {5 w9 J& q; o  }7 Y" o$ u, Y4 a3 ^4 b! s7 D7 s
函数的参数可能存在默认值,这些默认值是用相应类型常量定义的。
/ k" b4 R  y/ h* N+ z: Z  ]* w6 B- X, Z8 a
示例:
0 [* [3 J& ]' q2 l
1 x) Y$ `/ T  L, e: ?1 h* U, z% |int somefunc(double a, double d=0.0001, int n=5, bool b=true, string s="passed string")
( J: D  w1 u9 d  U  {' e: J: a# R& U- S  _9 O3 q
   Print("需求参量 a=",a);; M4 ?# M. P4 i6 e9 a: l
   Print("下列参量被传送: d=",d," n=",n," b=",b," s=",s);
* Z) b" L3 h4 c8 [) w9 Q; _0 R   return (0);
! Z0 i) ?7 g4 j2 n  }
. v/ @+ W" G2 M6 V1 _8 e如果为某个参数指定了默认值,那么所有后续的参数也必须指定默认值。+ Q; z2 {" U, a$ z5 Z% v) P; b+ I
  i% z3 ~; G+ [2 d
错误范例:  C  L) m2 u5 B+ C
4 W, U, I7 i! V; j' y$ R8 Q
int somefunc(double a, double d=0.0001, int n, bool b, string s="passed string")7 c3 x7 ~. |5 M* W7 u" V# w0 D. e
  {
  J$ b+ {0 V, R9 a3 o2 G  }6 \3 _8 d! W+ Z  f2 f, ~
函数调用
* ], n6 w  b; |! N$ j如果在表达式前出现一个曾未用过的名字,又后跟一个左括号,在上下文环境中它将被视作函数的名字。1 w% H0 }2 t' d5 t
3 W# t/ {) g) d9 ]  c& g9 X
函数名称 (x1, x2,..., xn)
0 N8 f9 P& P0 i! _; x! V+ J( ]函数自变量(形式参数) 按值的方式传递,也就是说,先计算每一个表达式xl,…,xn的值,再将其值传递给函数,表达式计算顺序及其值的传递要确保无误。在执行期间,系统将检查 那些提供给函数的值和参数的类型。这种形式的函数调用被称为“值传递”。调用函数是为了获得函数返回的表达式值。函数的定义类型必须符合函数返回值的类 型。在全局层次,我们可以在程序的任何位置定义和说明函数,即要在其他函数之外定义,在函数之内,不能定义或说明另一个函数。
* `' i4 Z+ Z) u, z9 @( g1 I0 @) `( [- C7 |* ~) d

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

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

使用道具 举报

精彩评论1

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

使用道具 举报

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

本版积分规则