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操作系统,它能同时运行几个程序(独立运行的程序又称之为进程),对于同一个程序,它又可以分成若干个独立的执行流,我们称之为线程,线程 ...
随机推荐
- Win10利用CodeBlocks搭建Objective-C开发环境(二)
工程文件已经建好:但此时会发现main.m文件为灰色,且无法点击,此时需右键点击main.m文件,在option选项中勾选 compile file和 link file选项. 设置完成后,双击mai ...
- SQL 创建表
SQL 创建表是通过SQL CREATE TABLE 语句来实现,该语句是DDL SQL语句.CREATE TABLE语句用于创建用于存储数据的表.在创建表时,可以为列定义主键.惟一键和外键等完整性约 ...
- 最新 哔哩哔哩java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.哔哩哔哩等10家互联网公司的校招Offer,因为某些自身原因最终选择了哔哩哔哩.6.7月主要是做系统复习.项目复盘.Leet ...
- [CF37D]Lesson Timetable_动态规划
Lesson Timetable 题目链接:https://www.codeforces.com/contest/37/problem/D 数据范围:略. 题解: 根本就没想到可以动态规划. 首先从前 ...
- 数据库相关概念讲解(java)
1.常用类或接口介绍 1.DataSource接口 通过javaAPI中javax.sql.DataSource接口注释了解. 1.DataSource功能 如下图: 翻译: DataSource对象 ...
- (十)EL表达式和JSTL标签快速入门
目录 什么是 el 表达式 示例:使用EL表达式获取pageContext .request.session.application域中的数据: 示例:使用EL表达式获取Bean属性 获取当前WEB应 ...
- Centos7.x 安装libevent2.x
1.在http://libevent.org/下载libevent-2.1.8-stable.tar.gz 2.tar -zxvf libevent-2.1.8-stable.tar.gz 3.cd ...
- 标准Trie、压缩Trie、后缀Trie
ref : https://dsqiu.iteye.com/blog/1705697 1.Trie导引 Trie树是一种基于树的数据结构,又称单词查找树.前缀树,是一种哈希树的变种.应用于字符串的统计 ...
- java——多态例题
class A { public String show(D obj) { return ("A and D"); } public String show(A obj) { re ...
- sqlite3 下载和安装步骤
1 下载地址 https://www.sqlite.org/2019/sqlite-tools-win32-x86-3300100.zip 2 添加系统变量 path中添加 sqlite3.exe所 ...
