目录
C语言和C++的区别
与C语言不同,C语言是面向过程的编程,C加加是面向对象的编程,区别在于:面向过程是着重于其中程序设计的算法、语言的运用,如设计不同功能的函数。面向对象,作为C语言的基础上发展起来的C++也就是更nb的C语言,保留了大部分C语言的功能,而在设计方面却着重于对象的处理,获得更好地性能。
有些佬可能就不喜欢看这些话,那咱们可以举一个小的经典栗子!——如何把大象装入冰箱“"”?
“面向过程”的方法就是咱们最熟悉的:
- 把冰箱门打开
- 把大象装进去
- 把冰箱门关上
在面向过程编程的过程中把一个大的目标转化为一个小的目标,每个动作都会去完成一个阶段目标
“面向对象”的方法而是:
- 冰箱,你给我把门打开。
- 大象,你给我爬到冰箱里去
- 冰箱,你给我把门关上。
在面向对象编程的过程中每一步都有一个对象,以及对象的动作,也可以实现完成这么样的目标,
面向对象来编程这样会对对象会有更好的处理。(与c加加相同的javascript也是面向对象编程,在我的上一篇博客中有实际的例子)
C++的特点
去应聘C/C++工程师多半入门级的考这个
- 封装性:封装就是把一组数据和这组数据有关的操作集合组装在一起,形成一个能动的实体也就叫对象。封装作为面向对象的重要特征,它实现了数据隐藏,保护了对象的数据不被外界改变,让对象成为相对独立的功能模块。外面不会让你看到!
在C数据结构这本书中也有着对C++的所谓对象的定义和C++面向对象编程的看法(建议佬们同步学习)
- 继承性
继承是指一个类具有另一类的属性和行为。这一个类具有另一个类的全部特征,又具有自身特征。C++中称为派生类,(或者也可以叫子类),而所继承的类称为基类(也称父类)。
什么是类?
“类(Class)是一种程序员定义的数据类型,用于描述从类创建的对象在构造时将是什么样子的。”,比如老师工作要备课讲课,批作业,答疑啥的是把,然后呢教师就可以叫一个类,而教师教学科目年级什么的就是这个类的成员变量。
栗子:一个是数学老师JOJO,一个是语文老师DIO,他们都是继承了老师,老师共同的工作都是教书系吧,可是由于他们自身学科的不同而实现方式而不同。(教师是基类,语文数学老师就是派生类)
- 多态性
多态是指不同对象调用相同名称的函数,可导致完全不同的行为。
对学校来讲,由教室构成,教室是教书的地方对吧,就相当于一个函数,实现教书这样的功能,但是每个不同科目老师,怎么讲是不是不同,那么产生的行为是不是不同,这就是多态。
在我们设计软件的时候,就可以从大的方向进行设计,而不必拘泥于细枝末节,因为具体怎么样的操作由对象自己负责!
估计有些佬都忘了,C++的特点是什么?
封装继承多态,建议和1433223一样熟练!
OOP是什么?
OPP(Object-Oriented Programing)面向对象程序设计
思想来自于第一个面向对象语言(Simula),对象的产生一种基于原型,一种是基于类。
- 基于原型:通过一个具有代表性的对象产生各种新对象,并由此产生更加符合的对象。
比如:女娲造人,刚造出来的一个男孩和女孩就是代表性对象,后来发现这两太完美了,不太实际,然后就扔出一大堆泥点造了现在的人们,能理解了吗(夏当|亚娃)?
- 基于类:一个类提供一个或多个对象的通用性描述。类和类型有关,故一个类相当于从该类产生实例的集合。
HELLO,WORLD!输出
#include<iostream>
using namespace std;
int main()
{
cout<<"Hello,World")<<end1;
return 0;
}
这个iostream是标准输入输出流的意思(英文翻译就是)C++在iostream中设置了常用的I/O环境和输入和输出流对象cin和cout等。iostream把C++库的组建放到一个名为std的命名空间namespace中,使用iostream就得添加命名空间,就是第二句话、
cout是系统定义的输出流对象,它是通过using namespace std进行定义的。<<是插入运算符,与cout一起使用,它的作用就是将<<右面的字符串插入到输出流中,C++系统将输出流内容输出到标准输出设备也就是咱们的屏幕上(一般为显示器)endl作用是换行。
cout进行标准输出
#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
int main()
{
cout << "helloworld" << endl;
int a = 10;
cout << "a=" << a << endl;
int b = 100;
cout << b << endl;
cout << a + b << endl;
cout << "long long的字节大小:" << sizeof(long long) << endl;
char str1[] = "helloworld";
cout << str1 << endl;
system("pause");
}
cin进行标准输入
{
int a,b;
cin>>a>>b;
}
也就是cout就是输出用的(<<)
cin就是输入用的(>>)
这样是不是好理解多了!其实也不过如此!(狗头)
巩固——挑战习题
定义3个整形变量,通过调用自定义函数实现求这3个数的最大值算数并返回该最大值!
先想想思路!
想想思路!
想思路!
思路!
路!
(答案):
#incldue<stdio.h>
using namespace std;
int Max(int a1,int a2,int a3)
{
int max1=a1;
if(a2>max)
max=a2;
if(a3>max)
max=a3;
return max;
}
int main(void)
{
int a,b,c;
cout<<"请输入3个整数:"<<endl;
cin>>a>>b>>c;
cout<<"3个数的最大值为"<<Max(a,b,c)<<endl;
return 0;
}
结尾
大家要是对c加加不敢兴趣,明天就更新数据结构链表部分,如果大家喜欢,点赞互关谢谢大家,我会去更新下一篇C++标识符和数据类型,希望大家一起越来越好!
文章评论