摘要:
从golang诞生起是否应该添加泛型支持就是一个热度未曾消减的议题。泛型的支持者们认为没有泛型的语言是不完整的,而泛型的反对者们则认为接口足以取代泛型,增加泛型只会徒增语言的复杂度。双方各执己见,争执不下,直到官方最终确定泛型是go2的发展路线中的重中之重。 今天我们就来看看为什么我们需要泛型,没有 阅读全文
摘要:
这是本系列的第一篇文章,golang拾遗主要是用来记录一些遗忘了的、平时从没注意过的golang相关知识。想做本系列的契机其实是因为疫情闲着在家无聊,网上冲浪的时候发现了zhuihu上的go语言爱好者周刊和Go 101,读之如醍醐灌顶,受益匪浅,于是本系列的文章就诞生了。拾遗主要是收集和golang 阅读全文
摘要:
大部分教程都会告诉我们静态初始化块和静态字段总是在初始化块和普通类字段前运行,事实上也确实如此,直到我看到下面这样的代码: public class Test { static Test test = new Test(); { System.out.println("normal"); } sta 阅读全文
摘要:
三元运算符广泛存在于其他语言中,比如: python: val = trueValue if expr else falseValue javascript: const val = expr ? trueValue : falseValue c、c++: const char *val = exp 阅读全文
摘要:
枚举在java里也算个老生长谈的内容了,每当遇到一组需要类举的数据时我们都会自然而然地使用枚举类型: public enum Color { RED, GREEN, BLUE, YELLOW; public static void main(String[] args) { Color red = 阅读全文
摘要:
反射是一项相当强大的特性,不仅在各类框架中被广泛应用,即使是在日常开发中我们也隔三差五得要和它打交道。然而在JDK9中JDK对反射加上了一些限制,需要注意。 考虑有如下的代码: import java.lang.reflect.Field; import java.util.ArrayList; p 阅读全文
摘要:
Linux下提供了丰富的api以供开发者们处理和时间相关的问题。然而这些接口看似各自为政实则有有着千丝万缕的联系,在学习和时间中引发了各种各样的混乱。因此时间处理成为了许多Linux开发者的梦魇,遇到时间处理往往避之不及。不过只要你稍微花费一点点精力,学会在Linux上优雅的处理时间和日期也并不是什 阅读全文
摘要:
本文索引 语言变化 数字字面量 越界索引报错的完善 工具链改进 GOPROXY GOSUMDB GOPRIVATE 标准库的新功能 判断变量是否为0值 错误处理的革新 Unwrap Is As golang1.13发布已经有一个月了,本文将会列举其中几个较为重要的特性。我们将会从语言变化、库变化以及 阅读全文
摘要:
在[上一篇文章](https://www.cnblogs.com/apocelipes/p/10899484.html)中我们介绍了使用vs2019作为远程Linux系统的开发环境,但我们是创建的传统的sln项目,而对于Linux开发者来说以autotools或是cmake进行项目结构的组织更为简单 阅读全文
摘要:
最近在重温《c++程序设计新思维》这本经典著作,感慨颇多。由于成书较早,书中很多元编程的例子使用c++98实现的。而如今c++20即将带着concept,Ranges等新特性一同到来,不得不说光阴荏苒。在c++11之后,得益于新标准很多元编程的复杂技巧能被简化了,STL也提供了诸如 TypeList 阅读全文