Pages

Tuesday, 7 February 2023

Did Golang learn "uniform initialization" from C++ 11?

type_name var_name {...} 


================== C++ 11 ==================

#include <iostream>
#include <vector>
using namespace std;
int main(){
    int x{};
    int y{10};
    string name{"Biden"};
    int a[]{1,2,3,};
    vector<int> v{1, 2, 3,};
    struct {string name; int age; } p1{"Alice", 18};
    return 0;
}
/* C++ 11 started supporting uniform initialization */

================ GO =======================

package main

import "fmt"

func main() {
    var v = []int{1, 2, 3}
    var scores = map[string]int{"Math": 98, "English": 88}
    var p1 = struct {
        name string
        age  int
    }{"Alice", 18}

    fmt.Println(v, scores, p1)
}

/* Go supports initialization similar to C++ 11 */

No comments:

Post a Comment