C++简介
本文仅用于学习交流,转载请注明:http://www.cnblogs.com/mxbs/p/6266466.html
Hello,C++ World!
简介:
C++融合了3中不同的编程传统:C语言代表的过程性传统、C++在C语言基础上添加的类代表的面向对象语言的传统以及C++模板支持的通用编程传统。一般来说,计算机语言要处理两个概念,即数据和算法。数据是程序使用和处理的信息,算法是程序使用的方法。
C语言是一种过程性语言,更强调算法,它具有结构化编程的特性,其试图使问题满足语言的过程性方法。为了更好地解决大型程序设计问题,其采用了自顶向下的设计原则,将大型程序分解为小型的、易于编写的程序单元(称为函数)来表示各个任务模块,尽管如此,在编写大型程序时仍面临很大的挑战。
在C++中,类是一种规范,它描述了这种新型数据格式,对象是根据这种规范构造的特定数据结构。为了应付C语言所面临的挑战,OOP(Object-Oriented Programming)提供了一种试图让语言来满足问题要求的一种新方法,其理念是设计与问题的本质特性相对应的数据格式。OOP程序设计方法首先设计类,它准确地描述了程序要处理的信息,这种技术涉及到许多新概念,如对象、类、封装、继承、多态等。
C++通用编程(generic programming)是C++支持的另一种编程模式,与OOP的目标相同,即:创建独立于类型的代码(通用),使重用代码和抽象通用概念的技术更简单。
C++诞生于贝尔实验室,由Bjarne Stroustrup于20世纪80年代开发出来,“C++主要是为了我的朋友和我不必再使用汇编语言、C语言或其它现代高级语言来编程而设计的。它的主要功能是可以方便地编写出好程序,让每个程序员更加快乐。”,他如是说。他的主页是:http://www.stroustrup.com/index.html。
程序的可移植性障碍:其一是硬件,其二是语言上的差异。
创建C++程序:
程序创建具体步骤取决于计算机环境和所用的C++编译器,但大体上如下步骤:
第一步,创建源代码文件。可以用文本编辑器、Notepad++、开发工具等进行源代码文件的编写。给源文件命名时,必须使用正确的后缀,将文件标识为C++文件,C++源代码文件的扩展名一般是.cpp。
第二步,编译源代码。将源代码翻译为机器语言(计算机使用的内部语言),包含了翻译后的程序的文件就是程序的目标代码(object code)。
第三步,链接。将目标代码与其它代码链接起来(链接:指将目标代码同使用的函数的目标代码以及一些标准的启动代码(startup code)组合起来,生成程序的运行阶段版本。),包含该产品的文件称为可执行代码。
编程步骤如下图示:
Windows编译简介:
打开编译器,选择新建-项目,在VC++下选择Win32 Console Application,选择创建一个空工程,接着添加源文件,如main.cpp,写如下代码:
#include <iostream> using namespace std; int main()
{
cout << "Hello,C++ World!" << endl; return ;
}
创建好工程后,需要对程序进行编译和链接。IDE通常提供了多个菜单,如Compile(编译)、Build(建立)、Make(生成)、Build All(全部建立)、Link(链接)、Excute(执行)和Run(运行),其含义如下:
Compile:通常意味着对当前打开的文件中的代码进行编译。
Build和Make:通常意味着编译工程中所有源代码文件的代码,这通常是一个递增的过程,一般只重新编译修改过的文件。
Build All:重新编译所有源代码文件。
Link:将编译后的源代码与所需的库代码组合起来。
Run或Excute:运行程序。如果运行之前没有进行上述步骤,Run将在运行程序之前完成这些步骤。
在Visual Studio 2010中有Build和Debug两大菜单,利用Debug下的Start Without Debugging或按ctrl+F5键运行上述程序,输出结果如图所示:
为我们输出了Hello,C++ World!
如果有疑问,可以联系giserdev@163.com,更多内容请参考:http://www.cnblogs.com/mxbs/,技术交流请加QQ群:586571286。
C++简介的更多相关文章
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- REST简介
一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
- HTTPS简介
一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- Cesium简介以及离线部署运行
Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...
- 1.Hibernate简介
1.框架简介: 定义:基于java语言开发的一套ORM框架: 优点:a.方便开发; b.大大减少代码量; c.性能稍高(不能与数据库高手相比,较一般数据库使用者 ...
随机推荐
- JavaScript基础知识(学习笔记)
1. 在JavaScript中所有事物都是对象:字符串.数字.数组.日期等等2. 在JavaScript中,对象是拥有属性和方法的数据3. 属性是与对象相关的值,方法是能够在对象上执 ...
- javax.security.auth.login.LoginException: Error during resolve 异常
登陆TIM时本地抛此异常,测试环境正常 需要重启测试环境机器以后,本地才可以登陆成功 求大神帮忙解决: INFO: Client code attempting to load security co ...
- android启动优化
############################################## # power on till android lock screen comes up # # get ...
- Win32函数Sleep的精度测试
用了三种方法,第一种使用高精度性能计数器:第二种是使用多媒体定时器,另一种是<Windows图形编程>里提供的CPU周期来获取.推荐第一种方式测量: 先看第一种: #include < ...
- python 下的数据结构与算法---2:大O符号与常用算法和数据结构的复杂度速查表
目录: 一:大O记法 二:各函数高阶比较 三:常用算法和数据结构的复杂度速查表 四:常见的logn是怎么来的 一:大O记法 算法复杂度记法有很多种,其中最常用的就是Big O notation(大O记 ...
- 发布到IIS后 程序乱码
网站-功能视图-.net全球化 编码设置 请求:utf-8 文件:gb2312 响应:utf-8 响应头:utf-8 可以根据需要自己定义
- SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 和oracle 查询数据中文乱码问题
一.SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 linux 设置系统语言 修改 /etc/sysconfig/i18n 文件,如 LANG="en_ ...
- MySql 1045错误
配置时以管理员身份运行MySQL Instance Configuration Wizard 当你登录MySQL数据库出现:Error 1045错误时(如下图),就表明你输入的用户名或密码错误被拒绝访 ...
- poj 1080 dp
基因配对 给出俩基因链和配对的值 求配对值得最大值 简单dp #include<iostream> #include<stdio.h> #include<string ...
- (原)anaconda 的安装与在pycharm中的版本切换
参考网页: http://continuum.io/blog/anaconda-python-3 http://conda.pydata.org/docs/intro.html#creating-py ...