LINUX下可以使用C++么?为什么说C++与linux文化相抵触?
发布网友
发布时间:2022-04-22 15:43
我来回答
共5个回答
热心网友
时间:2023-11-11 03:29
一、Linux下不仅可以用C++,而且可以很好的用C++。
Linux的著名桌面框架KDE就是用QT开发的,QT是C++的一个程序框架。
只要有C++库和编译器就可以编写、编译C++程序,这个放心。
二、出处:参见《unix编程艺术》对c++的批评。
C++由于语言本身过度复杂,这甚至使人类难于理解其语义。更为糟糕的是C++的编译系统受到C++的复杂性的影响,非常难于编写,即使能够使用的编译器也存在了大量的问题,这些问题大多难于被发现。
由于本身的复杂性,复杂的C++程序的正确性相当难于保证。也有人提出不支持多线程的原语等缺陷。不过有如此多的知名人士提出了如此多的缺陷,正说明C++被广泛使用和成功。
c++语言由于过度的复杂性,以及与unix的文化相抵触,在unix/linux领域受到很多著名人士(比如Linux之父linus torvalds与著名黑客Eric S. Raymond)的强烈批评与抵制。
热心网友
时间:2023-11-11 03:30
当然可以用C++。
从运行效率上来说,C++和C相差不是太多。C稍微高一点。
从所谓的编码风格来说,C++是面向对象编程,C所谓的面向过程。但是通过使用函数指针,你也可以实现面向对象,你可以看看内核的代码。
下面回答一下为啥不喜欢C++的原因吧。
从编译器的角度来说,C++的编译器帮你做了一些你必须要注意的事情,比如拷贝,比如继承之类的。这种事情看起来可以减少编写代码的长度,但是对于维护和调试来说却带来了巨大的麻烦。因为编译器额外做了一些没有让你看到的事情,这些事情你又必须理解了才能让程序正常运行,这就是为啥说C++难以调试。你愿意花1天来写代码,然后花不知道多少天来调试呢,还是愿意花3天来写代码,然后花2天来调试呢?当然,你可以说是写代码的人水平不够造成了这个问题,但是你要知道人总是会犯错误的...这种基于隐藏规则的检查就应该由编译器来干才对。
要是想减少编码长度,可以选择Python啊,干嘛用C++?
热心网友
时间:2023-11-11 03:30
1)肯定可以的呀!
2)只是Linux下的编程通常偏向效率,而明显C的效率明显要好于C++,但是C++的面相对象特性,对于布局/架构代码也明显不是C可以做得到的。
3)现在很多Linux下的开发工作主要就集中于服务器和嵌入式,都比较偏重于效率性,尤其嵌入式;但是对于服务器,个人觉得如果不是对效率要求非常严苛,还是可以用C++的,毕竟C++对于管理代码,理解代码的架构还是比C容易得多。
热心网友
时间:2023-11-11 03:31
当然可以使用C++啊。
那段话的意思主要是指责C++语言的复杂性。
C++由于语言本身过度复杂,这甚至使人类难于理解其语义。更为糟糕的是C++的编译系统受到C++的复杂性的影响,非常难于编写,即使能够使用的编译器也存在了大量的问题,这些问题大多难于被发现。不过有如此多的知名人士提出了如此多的缺陷,正说明C++被广泛使用和成功。
热心网友
时间:2023-11-11 03:31
在没有学会骑自行车之前,可以不要学习开摩托车,就更别说开汽车了。这个问题是见仁见智的,复杂不复杂,好不好用是大家看问题的角度和层次不同。抵制是因为这些大拿都已经做出了,或者以后还会做出更好的工具...
如果是个工具,你可以学习并且用好它;如果你学好了,想发展它,可以继续深入的研究它;如果它确实有无法克服的缺陷,那就开发一种更好的工具取代它。如果能做到第一步,也就不错了。
PS:C\C++在Linux下都可以用。追问你的意思是我现在学C还是学C++都行是么?还没到我能体会到他复杂程度的地步?
你认为C是自行车,C++是摩托车?
追答False.
它们都可以同时是任何车,关键是用的人的水平。把它们当自行车骑要卖点力啊,当成摩托车骑就省多多劲老。要是能开成汽车,可以上高速。如果当成飞机开上了蓝天,你就可以看到原来在地上看不到的东西。