几种常见语言的基本语法对比:数字处理
标签:差距 copy http ted 变量 bre copyright 命名 number
c++: 在不涉及到内存管理下,总体感觉很爽,又因为是unix自带编译器。非常爽。唯一一点就是枚举类型中的枚举值是好像是全局变量名。搞得枚举值命名很长。 语法基本没有太多停顿 ,这个例子中所涉及的语法部分和c#,java 很像。
#include using namespace std;
enum enum_op
{
enum_op_add,
enum_op_minus,
enum_op_time,
enum_op_divide
};
int NumberCaculate(int a,int b,enum_op op)
{
int ret=0;
switch (op)
{
case enum_op_add:
{
ret=a+b;
break;
}
case enum_op_minus:
{
ret=a-b;
break;
}
case enum_op_time:
{
ret=a*b;
break;
}
case enum_op_divide:
{
ret=a/b;
}
}
return ret;
}
template
T NumberCaculateFull(T a,T b,enum_op op)
{
T ret=0;
switch (op)
{
case enum_op_add:
{
ret=a+b;
break;
}
case enum_op_minus:
{
ret=a-b;
break;
}
case enum_op_time:
{
ret=a*b;
break;
}
case enum_op_divide:
{
ret=a/b;
}
}
return ret;
}
int main()
{
cout"hello,world"endl;
cout1,3,enum_op_minus)endl;
coutfloat>(1.2,3.3,enum_op_time)endl;
}
object-c:因为有xcode这个地球第二的编辑器(vs第一),所以写代码还是很爽。 和c++不同的是 对于 枚举中 参数的定义 enum enum_op op, 重要的是不完全支持泛型 。这个就差距了。
//
// main.m
// HIWorld
//
// Created by linson on 2018/8/19.
// Copyright ? 2018年 linson. All rights reserved.
//
#import enum enum_op
{
enum_op_add,
enum_op_minus,
enum_op_time,
enum_op_divide
};
int NumberCaculate(int a,int b,enum enum_op op);
int main(int argc, const char * argv[])
{
@autoreleasepool
{
NSLog(@"Hello, World!");
int a=2;
int b=4;
NSLog(@"%i", NumberCaculate(a, b, enum_op_add));
NSLog(@"%i", NumberCaculate(a, b, enum_op_minus));
}
return 0;
}
int NumberCaculate(int a,int b,enum enum_op op)
{
int ret=0;
switch (op)
{
case enum_op_add:
{
ret=a+b;
break;
}
case enum_op_minus:
{
ret=a-b;
break;
}
case enum_op_time:
{
ret=a*b;
break;
}
case enum_op_divide:
{
ret=a/b;
}
}
return ret;
}
几种常见语言的基本语法对比:数字处理
标签:差距 copy http ted 变量 bre copyright 命名 number
原文地址:https://www.cnblogs.com/lsfv/p/9581657.html
评论