1. 程式人生 > >幾種常見語言的基本語法對比:數字處理

幾種常見語言的基本語法對比:數字處理

變量名 nslog num namespace img ace pool 變量 就是

c++: 在不涉及到內存管理下,總體感覺很爽,又因為是unix自帶編譯器。非常爽。唯一一點就是枚舉類型中的枚舉值是好像是全局變量名。搞得枚舉值命名很長。 語法基本沒有太多停頓 ,這個例子中所涉及的語法部分和c#,java 很像。

技術分享圖片

#include <iostream>
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<typename T> 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; cout<<NumberCaculate(1,3,enum_op_minus)<<endl; cout<<NumberCaculateFull<float>(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 <Foundation/Foundation.h>

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;
}

幾種常見語言的基本語法對比:數字處理