zoukankan      html  css  js  c++  java
  • golang 特殊知识点

    golang 代码不需要分号; 但是又会自己在底层增加;号 ,所以 golang的{左花括号必须在代码的最后一行,而不能在新的一行;
    golang 代码组织里需要注意 vendor 和 internal 的特殊用法,internal 不会主动出现在godoc中,但是可以手动输入路径;
    golang 的time.Format(string)string 方法,参数必须是:2006-01-02 15:04:05 而不能是自定义的年月日时间,虽说方便记忆,但是你Format注释就不能说明白了么? 还要我百度搜索,不友好;
    golang 的map结构,每次都会故意乱序,实在是太恶心了;;; 我做权重随机的时候,就必须要先转顺序固定的数组slice了;有序或者无序 不重要,关键两次遍历 顺序都不一样,这样就不好玩了!
    golang 的map[]struct{} 添加进入map后的元素 是不能修改的 ! 好想念C++的STL map (其实这样也挺好的,学习Erlang思想,只能拷贝,不能修改,能保证并发下的程序健壮性),不过必须要make,也是硬伤。
    golang 的import "./package" 基本上没用,必须使用完整package路径,我做单元测试UnitTest必须在同一个目录,如果在子目录test,则必须指定完整路径,太恶心,增加重构成本!
    golang 的类型必须显式转换, int int32 int64 就不能自动转换?
    golang 没有模板, 所以看到代码里有一个函数 ConvertIntSliceToInt32Slice 我就觉得 有点小烦躁!
    golang 的函数返回值,如果是定义有多个返回值参数,还必须用 类似(int,error)这样的括号扩住,没有括号就报错,有点恶心;
    golang 的多函数返回值,不能链式调用,加上类型不能隐式转换,我要声明一些 多余的临时变量,恶心!
    golang 没有const限定,这个本来是让开发人员减少错误的发生的(见 effectiveC++ 条款4);但是golang没有,golang的数据 slice map 都没法修改,跟C++完全不同,到是与Erlang 差不多.烦躁.

    参考链接:
    Golang Vendor

  • 相关阅读:
    BZOJ 5297: [Cqoi2018]社交网络 矩阵树定理
    BZOJ 5300: [Cqoi2018]九连环 打表+FFT
    BZOJ 5298: [Cqoi2018]交错序列 二项式定理+矩阵乘法
    BZOJ 5301: [Cqoi2018]异或序列 莫队+桶
    BZOJ 5324: [Jxoi2018]守卫 区间DP
    BZOJ 5322: [Jxoi2018]排序问题 模拟+贪心
    点斜式
    斜截式
    斜率
    求线段的交点
  • 原文地址:https://www.cnblogs.com/ayanmw/p/8734500.html
Copyright © 2011-2022 走看看