C++概述

HelloWorld官方
• 阅读 1290

概述

C++ 是静态,可编译,通用,大小写敏感,格式自由的编程语言,它支持程序化,面向对象的,和泛型编程方式。

C++ 被看作是中间层语言,因为它同时包含了低级语言和高级语言的特性。

C++ 是于 1979 年在新泽西的茉莉山丘的贝尔实验室由 Bjarne Stroustrup 开发的,它是 C 语言的加强版,最开始它被称作 “C with Classes”,但是后来在 1983 年被更名为 C++。

C++ 是 C 语言的超集,也就是说任何合法的 C 程序它同时也是合法 C++ 程序。

注意: 编程语言使用静态类型指的是对于类型检查是在编译的时候进行,而不是在运行期检查。

面向对象编程

C++ 完全支持面向对象编程,它包含了面向对象开发的四个特性:

  • 封装
  • 数据隐藏
  • 继承
  • 多态

标准库 标准的 C++ 包含三个重要的部分:

  • 语言的核心部分提供了编程所需的基本构件,比如变量定义,数据类型和字面值等;
  • C++ 标准库提供了丰富的函数操作,例如对文件和字符串的操作等;
  • 标准模板库(STL)提供了许多的操作数据结构的方法

ANSI 标准

ANSI 标准试图确保 C++ 的可移植性,也就是说,你所编写的代码利用了微软的编译器编译之后没有错误,那么它在 Mac,NIX,Windows box,或者 Alpha 上同样没有错误。

ANSI 标准到最近基本上还保持不变,并且所有的 C++ 的编译器生成商支持 ANSI 标准。

学习 C++

学习 C++ 的时候最重要的事情是关注与它的概念,而不是被语言的具体技术细节给弄晕了。

学习一门编程语言的目的是成为一名更优秀的程序员,也就是说在设计、实现一个新的系统和维护旧的程序时,能够更加高效的工作。

C++ 支持各种编程风格。 你可以按照 Fortran, C, Smalltalk 等任何语言的风格进行编程。每种编程风格均可以实现运行期和空间高效性这一目标。

C++ 的使用

C++ 被几十万的程序员所使用,它是进行应用程序开发中必不可少的一部分。

C++ 被大量的使用在编写设备驱动程序,和那些有实时性限制,需要直接操作硬件的软件。

不管是使用 Macintosh 或者使用运行 Windows 操作系统的电脑的用户都直接的使用了 C++,因为这些系统的主要用户界面是由 C++ 编写的。

点赞
收藏
评论区
推荐文章
blmius blmius
1年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Stella981 Stella981
1年前
C# Aspose.Cells导出xlsx格式Excel,打开文件报“Excel 已完成文件级验证和修复。此工作簿的某些部分可能已被修复或丢弃”
报错信息:最近打开下载的Excel,会报如下错误。(xls格式不受影响)!(https://oscimg.oschina.net/oscnet/2b6f0c8d7f97368d095d9f0c96bcb36d410.png)!(https://oscimg.oschina.net/oscnet/fe1a8000d00cec3c
Stella981 Stella981
1年前
Linux查看GPU信息和使用情况
1、Linux查看显卡信息:lspci|grepivga2、使用nvidiaGPU可以:lspci|grepinvidia!(https://oscimg.oschina.net/oscnet/36e7c7382fa9fe49068e7e5f8825bc67a17.png)前边的序号"00:0f.0"是显卡的代
Stella981 Stella981
1年前
Rust开发环境搭建
1.Rust概述按照百度百科的说法,Rust是一门系统编程语言,专注于安全,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。Rust在语法上和C类似,但是设计者想要在保证性能的同时提供更好的内存安全。Rust最初是由Mozilla研究院的GraydonHoare设计创造,然后在DaveHerman,Brend
Wesley13 Wesley13
1年前
Java 概述
Java概述Java编程语言是一种通用的、并行的、基于类的、面向对象的语言。它被设计得非常简单,这样程序员可以在该语言上流畅的交流。Java编程语言与C和C有关联,但组织却截然不同,其中也省略了其他语言的一些用法,比如指针。它的目的是作为一个生产性语言,而不是一个研究性语言,因此,在设计上避免了包括新的和未经考验的功能。
Stella981 Stella981
1年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Easter79 Easter79
1年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Stella981 Stella981
1年前
Nginx反向代理upstream模块介绍
!(https://oscimg.oschina.net/oscnet/1e67c46e359a4d6c8f36b590a372961f.gif)!(https://oscimg.oschina.net/oscnet/819eda5e7de54c23b54b04cfc00d3206.jpg)1.Nginx反
Wesley13 Wesley13
1年前
C#与.NET
C从本质上来说,它是一门编程语言。他不是.NET体系的一部分。虽然C总是用来生成.NET平台的代码。C语言不能孤立的使用,必须与.NET平台一起使用。这样才能大大提高开发效率。相对于C,Java等语言,C是一种比较新的语言。它是在吸收了C和Java语言在设计上的优点设计出来的。从一开始C就被设计为面向对象的开发语言。.NETFra
Wesley13 Wesley13
1年前
初探 Objective
作者:Cyandev,iOS和MacOS开发者,目前就职于字节跳动0x00前言异常处理是许多高级语言都具有的特性,它可以直接中断当前函数并将控制权转交给能够处理异常的函数。不同语言在异常处理的实现上各不相同,本文主要来分析一下ObjectiveC和C这两个语言。为什么要把ObjectiveC和