关于不同语言的参数执行顺序问题
2014-08-13 18:52
316 查看
#include <cstdlib> #include <cstdio> #include <cstring> int t1() { printf("t1\n"); return 1; } int t2() { printf("t2\n"); return 2; } void t3(int a, int b) { printf("t3\n"); printf("#%d#%d\n", a, b); } void t4() { t3( t1(), t2() ); } int main() { t4(); }
对于C、C++等,参数是从右往左进行解析的,结果:
wsdc@wsdc-server:~/Document/cpp$ ./test1 t2 t1 t3 #1#2
对于Java,参数解析是从左往右进行的:
abstract class Test { public abstract void m1(); public void solve(String a) { m1(); System.out.println("in solve " + a); } } class TestImpl extends Test{ public void m1() { System.out.println("m1"); } public String t1() { System.out.println("t1"); return "t1"; } public String t2() { System.out.println("t2"); return "t2"; } public void t3(String a, String b) { System.out.println("#" + a + "#" + b); } public void t4() { t3(t1(), t2()); } } public class Main { public static void main(String[] args) { new TestImpl().t4(); } }
其执行结果是:
t1 t2 #t1#t2
相关文章推荐
- asp.net关于Page_Load方法和执行js脚本顺序的不同所带来的问题
- 关于FLEX中AS执行顺序的问题
- 关于c#执行mysql操作,传递参数的问题
- 关于在页面里加载和执行JS顺序的问题
- fcitx 关于多语言,不同编码的一点说明;同时也可以用于解决fcitx不能输入问题
- 关于Sql关键字SELECT FROM GROUP ORDER 等的执行顺序问题的解释
- 关于SELECT执行顺序的问题!
- 关于不同sql语句执行效率的问题
- C语言学习4: 函数返回值与传入参数,关于函数值传递和类型隐性转换,变量不同的作用域,static变量,多文件编译例如两个C文件,显示函数调用语句跳转,递归,斐波那契数列,多文件编译相同变量的问题。
- 关于Sql关键字SELECT FROM GROUP ORDER 等的执行顺序问题的解释
- 关于触发器在行级和语句级的执行顺序问题
- 关于.net操作Oracle数据库,parameters参数顺序的问题。
- FLEX当中关于的执行顺序问题
- gcc编译参数的顺序问题——关于static和动态链接库
- C++关于多个连续流插入符&lt;&lt;中执行的顺序问题
- 关于ENTER_FRAME的执行顺序问题
- 关于sql条件语句where id in (@参数)执行报错问题(转换成数据类型 int 时失败)(
- 关于j2me执行顺序的问题
- 关于继承类执行构造函数的顺序问题