c++初步认识
经过漫长的C学习终于踏入C++的知识库当中了,还是保持以前的习惯会一步步通过写博客的形式来记录点滴学习记录,这种学习方式是相当慢的,但是对我来说是最踏实的,不浮躁,一步一个脚印。C++是一门啥语言呢,对于初学者是没话语权的,但它定是一门非常难学又非常有用的语言,相信在不久的将来我会把它踩在脚下为我所用,话不多说,学习正式开始。
①、开发工具:
这里采用VS 2008作为开发工具,另外再安装一个VC助手(Visual Assist X),具体下载地址:
开发工具下载:
http://www.uzzf.com/soft/17047.html
安装中可能会遇到如下问题,可以参考一下:
http://blog.csdn.net/tanaya/article/details/6736859
②开发工具的初步使用:这里先对工具的基本使用有个了解,之后在学习过程中再不断深入
第一步:新建c++工程:




再来看一下它在硬盘里面的目录:


接下来添加一个c++文件,以便呆会进行下面的第二步操作,具体做法如下:


点击添加:

这时再来看下硬盘上的目录有何变化:


接下来就可以进行编写啦~~
第二步:编写代码:
通常学习一门新东西都是从“Hello World!!”开始,这里也照例,只打印它,这个时候先不用管它的具体语法,先依葫芦画瓢就成,之后会慢慢学,这里有个直观认识就成:

上面代码没啥可说的,是人都能理解,代码写好之后,接着就是进行下一步了:
第三步:编译:


这时再来观测硬盘的目录又多了哪些文件:


【说明】:
编译:当前源代码编译成二进制目标文件(.obj文件)
链接(link):将生成的.obj文件与库文件.lib等文件链接,生成可执行文件(.exe文件)。
那如何生成可执行文件呢?


这时看下硬盘的本地目录又发生了什么变化:


接下来就可以行动了。
第四步:运行:


可以发现控制台输出一闪而过了,这样不便于观察,解决它的办法是:

这时再运行就不会闪了:

这就是最简单的C++程序,接下来演示一下文件的添加,这里弄一个加法和减法相关的运算,这里演示两种添加文件的方法:
①、直接在工程的硬盘目录中添加:

这时需将其添加到studio中,如何添加呢?



【注意】:如果只右击“头文件”或“源文件”添加现有项,则添加的只是相关的文件。
好了,接着编写代码:


接下来弄一个减法,以第二种方式来新建文件。
②、直接在studio中添加:



接着以同样的方式添加源文件:


接下来编写代码:


这时在main中去使用以上两个方法:

这时运行看效果:

这时再看下硬盘上的文件变化:


对于这些产生的文件其实我们可以清理掉,可以通过如下操作:




以上就是对vs 2008工具的基本使用,下面我们来想一下,这个程序能否跨平台,在linux上也能进行编译运行呢?下面来验证一下:
首先将工程拷贝到Linux中:


然后准备一个Makefile文件放到源文件目录中准备进行编译:



在正式编译之前,还需修改一个Makefile文件,因为之前是用来编译C程序的,而这次我们是学的c++,修改如下:
原来的Makefile内容:

修改之后:

这时来看下能否正常编译用vs2008编写的cpp程序:

通过这个实验也就说明:“以后在windows上开发的程序,都能放到Linux下编译和运行,只需要编写一个Makefile既可,而不需要修改程序”。
这是学习c++的一些准备工作,比较简单,但也能重要,接下来会一步步开始学习它,下节见~~
37:50
c++初步认识的更多相关文章
- 移动端之Android开发的几种方式的初步体验
目前越来越多的移动端混合开发方式,下面列举的大多数我都略微的尝试过,就初步的认识写个简单的心得: 开发方式 开发环境 是否需要AndroidSDK 支持跨平台 开发语言&技能 MUI Win+ ...
- CSharpGL(29)初步封装Texture和Framebuffer
+BIT祝威+悄悄在此留下版了个权的信息说: CSharpGL(29)初步封装Texture和Framebuffer +BIT祝威+悄悄在此留下版了个权的信息说: Texture和Framebuffe ...
- Android自定义View初步
经过上一篇的介绍,大家对于自定义View一定有了一定的认识,接下来我们就以实现一个图片下显示文字的自定义View来练习一下.废话不多说,下面进入我们的正题,首先看一下我们的思路,1.我们需要通过在va ...
- 初步认识Node 之Node为何物
很多人即便是在使用了Node之后也不知道它到底是什么,阅读完本文你应该会有一个初步的.具体的概念了. Node的目标 提供一种简单的构建可伸缩网络程序的方法.那么,什么是可伸缩网络程序呢?可伸缩 ...
- [入门级] 基于 visual studio 2010 mvc4 的图书管理系统开发初步 (二)
[入门级] 基于 visual studio 2010 mvc4 的图书管理系统开发初步 (二) Date 周六 10 一月 2015 By 钟谢伟 Category website develop ...
- 基于C/S架构的3D对战网络游戏C++框架_05搭建系统开发环境与Boost智能指针、内存池初步了解
本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): ...
- Azure底层架构的初步分析
之所以要写这样的一篇博文的目的是对于大多数搞IT的人来说,一般都会对这个topic很感兴趣,因为底层架构直接关乎到一个公有云平台的performance,其实最主要的原因是我们的客户对此也非常感兴趣, ...
- CozyRSS开发记录14-RSS源管理初步完工
CozyRSS开发记录14-RSS源管理初步完工 1.添加源的响应 DialogHost.Show有几个版本的重载,加一个DialogClosingEventHandler参数.我们让添加源对话框的添 ...
- 初步了解CPU
了解CPU By JackKing_defier 首先说明一下,本文内容主要是简单说明CPU的大致原理,所需要的前提知识我会提出,但是由于篇幅我不会再详细讲解需要的其他基础知识.默认学过工科基础课. ...
- Windows多线程多任务设计初步(转)
Windows多线程多任务设计初步 [前言:]当前流行的Windows操作系统,它能同时运行几个程序(独立运行的程序又称之为进程),对于同一个程序,它又可以分成若干个独立的执行流,我们称之为线程,线程 ...
随机推荐
- 在Electron运行的子页面无法访问window.opener解决方案
我们的首页有一个window.open打开子页面后反向刷新父页面的功能,但是主页面如果开启了nodeIntegration=true,这个时候再设置nativeWindowOpen是不启作用的.再被w ...
- linux shell `符号详解
linux shell `符号详解 <pre>[root@iZ23uewresmZ arjianghu]# echo `ls`asss.html common guaji.php imag ...
- [学习笔记] 在Eclipse中添加用户库 Add User Libraries ,在项目中引用用户库
如果还没有安装Eclipse, 则请参考前文: [学习笔记] 下载.安装.启动 Eclipse(OEPE) 添加用户库 本文主要介绍在项目中直接使用第三方库的情况.就是把第三方的jar文件直接放到某 ...
- 工作总结--CTO(张王岩)IO的正式使用
4个抽象类 InputStreawm int read() void close() OutputStream void write(int) void flush() void close() R ...
- [转帖]2018年SaaS行业收入结构及未来发展预测[图]
2018年SaaS行业收入结构及未来发展预测[图] http://www.chyxx.com/industry/201908/774792.html 2019年08月23日 14:34:47字号:T| ...
- LC 144. / 94. / 145. Binary Tree Preorder/ Inorder/ PostOrder Traversal
题目描述 144. Binary Tree Preorder Traversal 94. Binary Tree Inorder Traversal 145. Binary Tree Postorde ...
- VMware安装windows2003
一.安装vm 这一项大家应该都会,网上也有很多教程. 二.搭建Windows server 2003 1.镜像下载- 2.虚拟机安装 首先是新建虚拟机,我选的是自定义,也可以选典型 第一步默认下一步, ...
- Python习题005
作业一 :任意一个数字列表,然后进行排序(冒泡排序) 方法一: def test1(): list1 = [1,23,4,6,8,55,2,9,90,35] list1.sort() # sort() ...
- 20191011-构建我们公司自己的自动化接口测试框架-Action的request方法封装
Action模块 封装接口request方法,根据传入的参数调用不同的请求方法,因为项目特色,我们公司的接口都是get和post方法,所以仅仅封装了get和post方法: import request ...
- kettle工具的介绍和使用
kettle详解(数据抽取.转换.装载) 原文地址链接:https://blog.csdn.net/qq_35731570/article/details/71123413 一:下载路径 当你要学 ...
