开始学习C++
这里突然想起来当初学习java和C# 总是会有个demo : hello world。 这里我记得我曾经看过一个笑话。说有个程序员,想学习书法,买了笔墨,都准备好了,但是不知道写什么好。最后,他大笔一写,“hello world”就诞生了。哈哈。不扯了。
学习一门语言之前我们需要的就是理解一门语言的一些基本概念。如下:
进入C++
1、main函数
2、C++注释
3、C++预处理和iostream文件
4、头文件
5、名称空间
6、使用cout 进行C++输出
7、C++源码格式化
C++语句
1、声明语句和变量
2、赋值语句
3、cout的新花样
4、使用cin
5、使用cout进行拼接
6、类介绍
函数
1、使用有返回值的函数
2、函数的变体
3、用户定义的函数
4、用户定义的有返回值的函数
5、在多函数程序中使用using编译指令
-------------------------------------------------------------------------------------------------
我们先看一个demo:
#include <iostream>
int main(){
using namespace std;
cout << "Hello C++ Language";
cout << endl;
cout << "i will rember the C++"<<endl;
return ;
}
我们可以总结一下:
从上述的demo:
我们可以看到:
1、注释,//符号
2、预处理编译指令 #include
3、函数: int main()
4、编译指令: using namespace 相当于应用命名空间死得
5、函数体(有的叫方法体)用英文{括起来}
6、使用C++的cout输出内容
7、结束main函数的一个return 语句 这里是有返回值的函数,所以我们return 0;
这里说明下。c语言的风格注释有/**/ 在C++中也是可以识别的。
重点记录下C++语句:
写过C#的都知道。C#语句其实就是一组函数,何为一组,就是多个语句组成的。同样我们这里C++也是这样,C++语句也就是一组函数(一个个语句组成)
看下面的demo:
#include <iostream>
int main(){
using namespace std;
int carrots;//声明变量 此时在内存中开辟 int 大小的名为 carrots的空间
carrots = ;//赋值语句 给内存中名字为carrots的变量赋值
cout << "carrots=";
cout << carrots<<endl;
carrots -= ;
cout << "this carrots=" << carrots << endl;
system("pause");
return ;
}
从上面看。我们知道赋值是从右向左进行的。
使用过C的会知道,C中的printf()就是输出 C++中的cout()也是输出。这两者有啥区别呢?
cout能够识别类型。设计更灵活,更好用。另外它是可以扩展的。这是书上说的。具体,我还不太理解。。呵呵
C++中的类,我靠。那里都有类。说实话,类就是一类事物抽象出来的一个东西(个人理解)。
现在,在公司,动不动就说,要用面向对象的思想来编程。唉。。啥叫面向对象如果你不懂,那就百度把。面向对象(oop).
书上说的:
类描述了一种数据类型的全部属性(包括可使用他执行的操作(function)),对象是根据这些描述创建的实体。
乱七八糟说的。接着来看看函数。
函数,奶奶的,不就是方法吗?
函数有两种:1、有返回值 2、无返回值
做过C#的都知道,动不动就会封装函数。其实封装来封装去,也就这两种。不过在逻辑层次上给大家看着感觉好多了,写起来也容易些。
开始学习C++的更多相关文章
- 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代
2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...
- Angular2学习笔记(1)
Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- 消息队列——RabbitMQ学习笔记
消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Unity3d学习 制作地形
这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- 菜鸟Python学习笔记第一天:关于一些函数库的使用
2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...
- 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)
前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
随机推荐
- 使用自己的ClassLoader实现热替换
首先实现一个自己的ClassLoader,该ClassLoader重写findClass方法. 从classpath中加载类资源. 注意,不要重写loadClass方法. 因为在使用自定义的MyCl ...
- [git]添加项目到git
写在前面 一直在想把代码托管到git上面,一直没有去研究,最近发现自己写的demo,好多都找不到了,实在是没办法了,耐下心研究了下git.这里通过添加了自己做的demo,算是也是学习下git的操作吧. ...
- linux下设置进程优先级方法!
Linux系统下提升进程优先级的办法 Linux系统进程的优先级取值:-20 到 19,数越大优先级越低. 可以通过top命令来查看,NI那一列. 改变进程的优先级的方法有两种: www ...
- 移动WebApp利用Chrome浏览器进行调试
详细的请看这个(HBuilder是我长期使用,而且值得支持的国内前端开发编辑器) http://ask.dcloud.net.cn/article/151 http://ask.dcloud.net. ...
- 【干货理解】理解javascript中实现MVC的原理
理解javascript中的MVC MVC模式是软件工程中一种软件架构模式,一般把软件模式分为三部分,模型(Model)+视图(View)+控制器(Controller); 模型:模型用于封装与应用程 ...
- 让ie浏览器支持html5新标签的解决方法(使用html5shiv)
没估计错的话旧版浏览器都是不识别这些新增的标签所以都是用行内元素来处理解决的,所以,有一个解决办法的突破口就是让它变成块状元素就不会处于同一行了,这样在新旧浏览器都是可以显示同样的效果,再者就是让浏览 ...
- ELK常见错误分析(转)
ELK 常见错误处理 ELK 这里就不介绍了,如何安装请参考博客之前的文章.在这里感谢ttlsa团队,同时,我很荣幸能加入到ttlsa团队中,分享点滴,凉白开说发文章有红包,期待这篇群主能给多少红 ...
- 面试集锦-常量,const, const 对指针的影响
在C语言中不可改变的数据(量)就是常量 在C语言中有三种常量 字面量(直接量),就是直接写出来的,从写法上就可以看出值与类型等,例如:19,123.456等 名字常量 ...
- POJ 2635 The Embarrassed Cryptographer
大数取MOD... The Embarrassed Cryptographer Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 1 ...
- HDOJ 2444 The Accomodation of Students
染色判读二分图+Hungary匹配 The Accomodation of Students Time Limit: 5000/1000 MS (Java/Others) Memory Limi ...