龙纹 发表于 2023-3-7 14:54:57

排序相关的语法糖,来看看有多甜?

本帖最后由 龙纹 于 2023-3-8 13:15 编辑

假设有一个自定义类型,3个成员,名字、年龄、工资,如果需要排序这些数据你会怎么做?手写冒泡还是去抄一个排序算法改改用?其实C++标准库提供了非常多的算法,其中就有排序,但是火山原生语法和C++语法存在很大差异,封装到火山难免会多些步骤,但不影响使用,而且写出的代码相当简洁。
代码和输出结果如下:




这段代码的意思是把员工信息数组按年龄排序,小的在前面。
如果把这个看作语法糖的话,够不够甜?但正如我前面说的,封装到火山需要多些步骤,不过也仅仅是多敲几个@输出名,类的具体实现如下:


这个实现依赖C++20,我封装好了模块并解决了一些兼容性问题,才使得这段代码可以在火山中正常运行。
火山的语法相对于C++,尤其是现代C++,显得有些呆板,不够灵活,导致有些代码不能以一个可接受的方式封装到火山中。还好的是火山提供了一些替换符,这个实现就依赖于几个月前更新的@pvpn替换符,希望火山的语法能够不断更新吧,最好是官方能解决一下和C++20的兼容性问题,这样库作者就可以使用较新的C++语法来封装库了。

htpmcj 发表于 2023-3-9 16:06:46

火山需要更多楼主一样的大神!
页: [1]
查看完整版本: 排序相关的语法糖,来看看有多甜?