首页 > 编程语言 >我一直看不明白:“C++会被java/python等这些语言替代”

我一直看不明白:“C++会被java/python等这些语言替代”

时间:2024-06-21 16:02:07浏览次数:29  
标签:java python 程序 c++ C++ 编写 nbsp

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「C++的资料从专业入门到高级教程」,

点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!


有些程序,是既可以用c++编写,也可以用java/python编写。

如果这类程序以前主要是由c++编写,后来逐渐变成主要由java/python编写,那么就可以说在这些领域中,c++被java/python代替了。

你随便问一个从业时间超过25年的老程序员,让他们给你描绘一下25年前c++“烈火烹油,鲜花着锦之盛”,你就知道c++有没有被取代了。

甚至在2005年,就能明显地观察到新出现的桌面应用,比如那时涌现的uml建模工具,已经很少有用c++编写的了。

这还是就桌面开发这个领域来说,至于其他新出现的领域,c++不是一触即溃,就是起个大早赶个晚集。

c++基本退回自己的老巢——系统程序开发领域,专注于啃老——啃c语言的地盘了。这是c++开始的地方,也是结束的地方。

结果还冒出来个rust跟c++抢。

操作系统对进程地址空间做隔离,就是怕进程通过指针破坏其他进程甚至内核里的东西。

c++程序的各个部分,每个部分(哪怕是再微不足道的部分)都可以轻易地通过指针破坏程序其他部分(包括最重要的那部分)。由此带来的bug,在当程序的不同部分是由不同的人编写,并且程序的不同部分由不同的线程同时执行时,会变得特别明显。

而当代c++程序员水平持续退化,有很多原因导致这一局面:

· 首先,相当多有能力的人被其他语言吸引走了,导致c++从业者“生源”劣化。

· 其次,c++社区的病态装逼文化导致很多选择c++的初学者把精力浪费在了学习没甚大用的stl及其衍生出来的更modern的特性身上,而对于真正重要的平台及业务知识的掌握程度令人发指。你能指望一群连编译时名字冲突都解决不了以至要被迫害妄想症似的在代码里写满“std::”的人解决并发环境下的运行时内存破坏问题吗?他吓都吓死了。

· 最后,c++的工具链确实落后,#include别人的头文件相当于直接让别人来改你自己的模块。这问题不到c++的module成为主流是没法解决的。763f1225b9d03ebf3c14a58e0f2aaf10.jpeg

标签:java,python,程序,c++,C++,编写,nbsp
From: https://blog.csdn.net/lz19zlun/article/details/139744740

相关文章

  • python pta 7-43 密码强度
    本题目要求根据输入密码字符串(字符串长度大于6),密码只能由大写字母、小写字母、数字及下划线四种类型组成,其密码强度为包含类型的数量,例如包含大小写则密码强度为2,四种类型全包含则为4.若包含其他类型的字符则输出IllegalPassword.输入样例1:在这里给出一组输入。例如:123456......
  • python pta 7-44 计算时间间隔
    输入两个日期,以hh:mm的格式输入,两者之间以空格分割。输出二者的时间间隔,同样以hh:mm的格式输出。其中,hh代表小时,mm代表分钟。若时间非法则输出IllegalTime.提示一:若不希望Python代码继续执行可调用exit()函数退出。提示二:为避免歧义,小时数限定为[0,24);分钟数限定为[0,60)......
  • python学习第二天之基本数据类型及其方法
    python的基本数据类型1.数字int2.字符串str3.布尔型bool4.列表list5.元组tuple6.字典dict一个一个来看,分别梳理各自的方法。一、数字int1.bit_length--得到指定数值的二进制的长度a=10print(a.bit_length)输出:4因为a=10,而10的二进制数是1010,刚好......
  • c++重载输出流(<<)
    一.重载输出流在C++中,可以重载输出流运算符(<<)来自定义对象的输出方式。重载输出流运算符允许我们以自定义的方式将对象输出到标准输出流或其他输出流中。以下是关于重载输出流运算符(<<)的几个知识点以及相应的示例:重载输出流运算符的语法:重载输出流运算符必须作为一个普......
  • JavaScript的学习之旅之基本数据类型
    一、字面量(常量)和变量字面量:不可变的数据,一般位于等式的右边变量:可变的数据,位于等式的左边<script> //声明一个变量 //用关键字var声明 vara; //要为变量赋值 a=456 a=678 //声明和赋值可以同时进行 varb=34; console.log(b);</script>二、标识符......
  • python 趣味习题_递归函数(炸弹迷宫的走法)
    @[toc]python学习中,常会遇到一些百思不得其解的难题,但有时“灵光一现”找准方法,难题便会迎刃而解。本专栏旨在记录本人解决问题的思考方法,及实现过程。有更好方法或对程序执行有疑问的伙伴,可在评论区留言,共同讨论。题目要求题目描述:在一串连续的迷宫(房间编号为1-11的......
  • vscode python编程入门与插件推荐
    使用背景作者是一名ai测开工程师,工作环境中通常会使用到pythonshellpostgresql数据库jupyter,shh工具git版本控制等,因此向选用一个适合自己的文本编辑软件,经过长时间磨合,最终选择VScode作为我的工作软件优点内存占用率低,集成度高,开源免费插件推荐AI助手:codegeex此插件......
  • JAVA SSE 服务端单向消息通知
    工作记录关于只需要服务端向web端单向通知的技术SSE的技术落地总结最近有个需求是关于消息的单向通知,原本考虑用websocket,但是技术经理认为太重,建议采用SSE.查阅相关技术后结合实际业务需要新建了一个工具类@Component@Slf4jpublicclassSSEUtils{privatefinalMap<......
  • 《C++ Primer》导学系列:第 7 章 - 类
    7.1定义抽象数据类型7.1.1类的基本概念在C++中,类是用户定义的类型,提供了一种将数据和操作这些数据的函数(成员函数)组合在一起的方法。类定义了对象的属性和行为,通过实例化类来创建对象。7.1.2定义类定义类时,需要指定类的名称,并在类体内声明数据成员和成员函数。类定义的......
  • C++的封装(适合新人,通俗易懂)
    作者:求一个demo版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处内容通俗易懂,没有废话,文章最后是面试常问内容1、访问权限介绍封装,那么需要先介绍一下访问权限:public公共权限、protected保护权限和private私有权限。(1)public公共权限简单来说:如果......