只是为了方便在自己的win、mac 与学校的病毒机上共同开发
然而最终主要还是在我的win10 上完成的。。。
只能说win10 真的很好用,至少很适合我
- 主要开发环境为win10 + vscode
- 编译环境为mingw64 ,理论兼容g++、gcc
- 文件编码一律UTF-8 ,编译后的程序及导出文件为系统编码
(导出主要文件是指第六题导出的统计报告(.txt)、Excel表格(.csv)等)
中文乱码主要原因都是编码问题,一般来说windows上vc6、Visual Studio、DevC++等默认编码是GBK, Visual Studio应该可以自行修改编码,其它两者无解,建议换vscode,修改编码为UTF-8 。
- 如果只是为了应付差事,建议别抄这份代码,风格太明显
- 如果是为了交流学习,欢迎指正
虽然做这种东西没多少价值,但既然不得不做,还是做完美些,也算价值相对最大化
- 探索了一下在C里运用各种编程范式,而不是一般的过程式编程
虽然不知道有多大意义,但还是挺好玩的
- 尝试了在C里模仿其他语言的一些特性
参照Go的命名规则,模仿Python的面向对象,模仿Java的接口。
为什么说是模仿python的面向对象而不是Java呢,
因为我并没有做到,在对象上调用方法时能自动获取到对象本体。
如果需要引用对象自身,还是得通过传入一个this 或者self 对象,
而这与python更像
计划中是没有js的,但不得不提,结构体本身作为方法、属性的载体,大括号式赋值这一点,真的非常像js,或者说Json
- 第六题里,重点尝试了用C还原一个类Java的HashMap
具体的实现细节主要参考Effective Java 和Java 1.8 源码
当然一些地方还是不得不让步,比如异步、多态、重载方法等