文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C跟C++有什么区别

2023-06-19 12:07

关注

本篇内容介绍了“C跟C++有什么区别”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

C ++是带有类的C。

早在C流行并且没有C ++的时候,Bjarne Stroustrup就选择了C,并使用来自Simula67语言的类对其进行了扩充,并创建了C ++。这些类为面向对象范例打开了一个全新的世界。

最初,没有专用的C ++编译器。当您编写C ++时,编译器将其转换为C(人类很难理解的C,但是C仍然可以),然后编译C。但是,C ++编译器确实出现了,新功能也出现了。

C和C ++之间的一些区别是:

在C语言中,对于输入或输出,我们使用诸如gets(),puts(),scanf(),printf()等函数。这些函数期望值具有特定的数据类型,或者对于scanf()或printf(),我们必须指定我们要函数处理的数据类型。在C ++中,我们有时可以使用这些功能。但是,人们通常更喜欢使用cin和cout对象。请注意,这些是类的对象,当我们执行I / O时,它们本身将确定变量的数据类型。

C不支持函数重载。您不能具有相同名称的多个功能。因此,假设您有一个计算整数的平方的函数和计算浮点数的平方的函数,则必须给它们分别命名。在C ++中,给它们起相同的名称,然后语言将根据传递给该函数的参数类型来确定使用哪个函数。

C不支持异常处理。您应该避免由于意外事件转折而导致运行时错误的情况。在C ++中,您可以引发异常并相应地处理它们。在进行大型项目时,这非常有用。

除了函数重载之外,C ++还支持C中不存在的运算符重载。是否曾经想过用+运算符连接两个字符串?好吧,尽管C运气不好,但是使用C ++可以做到。当然,类使这一切成为可能,并且您必须使用std :: string而不是常规字符串,但是,为了保持理智,std :: string要好得多。

上一点将我们引到了std :: string。这是一个用于字符串的(惊奇类)类。比C风格的字符串更易于使用和阅读。

对于动态内存分配,C使用malloc()和free(),但是C ++具有更好的new和delete运算符。

命名空间变得越来越流行,尤其是在应用程序开发中,并且C ++确实支持C语言中缺少的命名空间。

C的一个令人讨厌的功能是您需要在它们的作用域的开始即所有的变量或函数的左括号之后声明所有变量。在C ++中,在任何位置定义一个变量,最好是最靠近使用它的地方。

在C中,全局变量可以具有多个声明。C ++更为严格,不允许这样做。

毕竟,C ++是面向对象的。诸如抽象,继承,多态之类的事情无法在C中完成。它为您带来了全新的范例。如果喜欢,请使用它。如果没有,您可以不用它(但是C ++的许多功能都是围绕类构建的)。

是否曾经想过创建仅在处理的数据类型上有所不同的类似功能?您可以通过函数重载来做到这一点,但这通常用于名称相同但行为不同的函数。如果您想做完全一样的事情但针对不同的数据类型该怎么办?为此编写多个函数没有多大意义。而且,函数重载不支持仅返回类型不同的函数。模板就在这里。您可以创建泛型函数和类,并将其与任何数据类型一起使用。C ++有,C没有。

C ++具有STL,这是一个非常有用的模板化类列表(因此,您可以将它们用于各种数据类型)。您已经准备好算法,数据结构,迭代器等。也许每个C ++程序员都会夸赞C编码器。

“C跟C++有什么区别”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯