关于c++:CC和C的关系以把大象放进冰箱里举例

40次阅读

共计 2799 个字符,预计需要花费 7 分钟才能阅读完成。

最近得用 unity 做虚构仿真相干的货色,当然,它的出名还是在游戏界,像 王者光荣 就是应用 unity 开发的。

应用 unity 就要学习 C# 语言,我始终认为 C# 是 C ++ 的降级版本,因为 C ++ 是 C 的改进版,然而 C# 与前两者的关系就相当于 JavaJavaScript,没半毛钱关系。

C 语言

C语言是一门 面向过程 的计算机编程语言,与 C ++、C#、Java 等面向对象编程语言有所不同。C 语言的设计指标是提供一种能以繁难的形式编译、解决低级存储器、仅产生大量的机器码以及不须要任何运行环境反对便能运行的编程语言。

并且它是一门非常优良而又重要的语言,WindowLiunxUXIX零碎都是应用 C 语言编写的,可见他的重要水平。

C++

C++ 是一种动态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,反对过程化编程、面向对象 编程和泛型编程。

它被认为是一种中级语言,综合了高级语言和低级语言的特点。

OOP(面向对象)语言特点:

  • 封装性:一个手机是由很多部件形成的,有处理器,存储器,输入输出设置,屏幕,电池等,把这些货色组装在一起就是手机了,这就是封装性。
  • 继承性:老子生了儿子,儿子继承了老子的个性,就有了继承性。
  • 多态性:我在家是父母的儿子,在公司是老板的员工,在深圳就是深圳人,在面向对象的语言中,调用雷同的办法会有不同的行为,这就是多态。

C Sharp

又叫C#,是一个古代的、通用的、面向对象的编程语言,它是由微软(Microsoft)开发的,由 Ecma 和 ISO 核准认可的。

至于它的命名,咱们来看看起源:

  • 微软为了解救 Visual Basic 未实现的事业
  • 剽窃 jxx 语言并起名为 j++
  • 被吃官司后,学聪慧了,谎称本人是 C 语言的改良
  • 命名为C#

对,剽窃的就是 Java 语言,当初的 C# 和 Java 有着惊人的类似。

三者的关系

经典案例:把大象放到冰箱里

C:

C 语言是一个极其高冷的人,因而答复都是冷冷的:

我:你好 C 语言,我想把大象放到冰箱里,帮我做好不好?

C:好

我:那咱们要怎么做呢?

C:猜

我:额。。。是不是应该先发明一只大象?

C:是

我:怎么发明呢?

C:猜

我只好去翻了一下文档,哦,malloc 一块内存啊。

我:好的,我用 malloc,申请一块空间放大象好不好?

C:好

我:额。。。大象怎么结构呢?

C:猜

我。。。去看了看大象的构造

我:好吧。。。我定义了一个大象的数据结构,接下来怎么做?

C:猜

我心里一阵说不出的感觉。。。

我:哦好吧,我发明一个冰箱,步骤应该和大象差不多。

C:嗯

我翻看了冰箱的构造,而后定义了一个冰箱的 struct。

我:好了,冰箱结构进去了,怎么放呢?

C:哼

我。。。默默在 Stack Overflow 上输出如何把大象放进冰箱 C。

我:终于找到答案了,定义一个办法,把大象的鼻子放进去、眼睛放进去、耳朵放进去。OK,都放进去了。C,你输入一下看看吧。

C:烫烫烫烫烫烫烫

我:哈哈哈哈 C 你终于不高冷了

。。。

我:哎,你咋不谈话了?C?你发烧了吗?

立即一盆水倒上去。

完结。

C++:

C++ 是一个常识渊博的孩子,绝对年老,也没那么高冷。

我:C 艹,咱们把大象放冰箱好吗?

C++:滚

谈话的不高冷呢?

我:额我错了,敬爱的 C ++,咱们把大象放冰箱好吧。

C++:好的么么哒,大象的数据类型曾经有人定义好了,冰箱也有人定义好了,你须要别离结构一个哦。

我:好的。

于是我翻看了文档后晓得了用 new 来结构

我:OK,敬爱的 C ++,我想结构一个大象。

C++:好的,结构大象的办法有 13 个,请问你抉择哪一种呢?

我。。。

我:你介绍一下吧。

C++:OK,首先能够在栈下面结构,这么做的益处呢是能够不便资源管理,而且语法也难看一些,能够利用 RAII,如果你不晓得什么事 RAII,你能够去 cppreference 下面查一下,当然你也能够在堆上结构,能够结构一只很大很大的大象,还有。。。。。。。

一个月过后,C++ 终于讲完了。我也长满了胡须。。。刮了胡子之后持续工作

我:好的,C++,我就在栈下面结构一只大象吧。

C++:你不爱我了。

我:???

C++:你都没有说“敬爱的”。

我。。。

我:好吧,敬爱的 C ++,我想简略结构一只大象。

C++:好的呢,你能够抉择结构一只非洲象还是美洲象还是南极洲象,象的肤色是什么样子的你能够设定一下,象的屁股大小你能够设定一下,象的性别和性取向你看要什么。。。。。。

我:我就想要一只简略的,默认的就好。

C++:好的,结构进去了一只,你能够抉择怎么初始化它,有 13 种初始化办法,举荐应用最新的对立初始化。

我。。。

我:对立初始化

C++:好的,咱们能够结构冰箱了。

我:好。。。

通过一个月的抉择,终于结构出了冰箱。

C++:好的,冰箱提供了 addElephant 办法,能够间接应用哦。

我:哇太棒了,好的,我就用这个办法。

C++:这个办法提供了多种重载,能够拷贝,挪动,也能够间接转发,省的在移入冰箱之前结构一个大象。

我:。。。你为啥不早说

C++:你为啥不早问。

我:就用挪动的吧。

C++:OK,请用 std::move 将结构好的大象转为右值援用。

我一脸懵,然而还是照办。

我:好了

C++:OK,开始放入冰箱了哦,速度极快的呢。

忽然

C++:报错了报错了,分子和原子不是能够转换的类型,大熊猫和爱迪生之间没有 + 运算符等 1556 项谬误。

我。。。。。。。。。

我:网上找材料,说看最初一行就差不多了,好的看看。嗯,看起来是第 31 行出错了,谬误是什么呢?报错信息啥也没说明确啊。轻易改改吧。编译,运行。

C++:好的,曾经将臀围 12 米,左臂长 13 米,右臂长 14 米,喜爱公大象,没有结婚生子,从小家教不错,熟读四书五经的非洲母大象放入橘黄色,五十米高,六十米宽,三百米厚,温度有零下三百度,制冷剂的牌子是湖澈牌,额外电压 220V 的冰箱里。

我。。。长舒了一口气。

C#:

我:我想把大象放进冰箱。

C#:好的客人,我爸爸微软曾经写好了大象类,也写好了冰箱类,你只需 new 一下就好了。

我:OK,new 好了,放入冰箱。

C#:好的,曾经放入,应用了冰箱的拓展办法 addElephant<> 办法。

我:嗯,你体现得很好,能不能放的略微快点儿,刚刚 C ++ 放的就很快。

C#:为了您的平安,不能。

我:额。。。那我想调节一下大象耳朵的尺寸。

C#:对不起,不能调节。您能够设定大象的耳朵形态,已为您定义好多种耳朵形态,您还能够调整大象的肤色,已为您定义好多种肤色。

我:算了不调了,就这样吧。

C#:好的。如果您须要速度,或者须要对大象的每个细节进行把握,还能够去看看我的弟弟,C++/CLR,他能够实现您提出的这些性能。您也能够将他带到我这里来,咱们能够一起工作的。你也能够把 C ++ 实现的工作导出到二进制模式,我能够间接应用的。

我:好的谢谢,不必了。

C#:好的,祝您生存欢快。

完!

您的点赞、评论、关注是对小编最大的激励 O(∩_∩)O👍👍👍

我是极客猿小兵,公众号【极客猿】,记录独立开发者学习成长,一起走向财产自在。

正文完
 0