- 主题:回去写了几天C++,越写越恶心
之前写了十多年的C++,前两年被恶心到rust去了。这两天因为要和硬件打交道,想要不还是再试一下C++吧。结果又写恶心了,继续写rust。
--
FROM 159.226.171.*
C++可以无缝调C api所以可以放便操作硬件
Rust 也可以调,就是稍微麻烦点。
前几天忘记写C++的痛苦经厉,就试着写了把C++发现不能忍
于是回过头去用虽然调C麻烦点,但别的方面不恶心的Rust
【 在 ArchLinux 的大作中提到: 】
: “和硬件打交道”好像和C++就没什么关系。
:
--
FROM 123.113.45.*
是的,就是跨语言传内存需要小心
【 在 hgoldfish 的大作中提到: 】
: 这个场景应该用 c 吧。封装一下导出接口给 rust, python 最好。
:
--
FROM 159.226.168.*
写纯粹的C太麻烦,
有vector用干嘛要自己管理内存呢,
但是C++诱惑太多,有vector用还不满足,二维数组总得存一下nrows, ncols吧,blitz++已经不支持了,boost::multiarray有太重,那就写个class/struct吧。
一开始还是人畜无害的POD,然后写着写着就开始往上加method。
类型固定觉得不灵活,就开始写template,有了template就需要处理有时候数据是T,有时候是complex<T>的情况,就需要写traits
函数返回类型也不能写死,然后decltype, auto, result_of,后置返回类型声明什么奇怪的生物就混了进来
接下来又需要考虑如果数据不是owned的怎么办,是另外写一个类还是作为一个常量类型参数传入。我选了后者。
然后就打开了潘多拉的魔盒,static_assert, enable_if就进来了。
然后血压就上来了,归根到底还是我自己的问题。
【 在 qyli (泾渭漳淮) 的大作中提到: 】
: 你为啥去找各种语言去调用c?你直接用c不就好了?
--
FROM 159.226.171.*