- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C3学习笔记
****************************************
day01
***************************************
c++和c的区别
c++实质上是包含了整个的c语言 c++基于c语言,最大的差别是c++是强类型语言,对类型检查比较严格
c++增加了很多内容:
支持面向对象
支持泛型变量
支持异常
支持运算符重载
差别:1,使用g++来编译
2,源文件的扩展名是.cpp .cxx .cc .C
3,不再使用c中的头文件 c++的头文件都是不带.h的
4,不再使用scanf和printf,而是使用cin和cout
5,所有的标准的类似及函数,变量,对象都是存放在命名空间std当中
6,c++当中,变量可以在任意地方定义,要使用的时候定义都可以 for(int i=0;i3;i++)
7.c++的bool类型;true 或 false
1:头文件 c语言里都是 .h,c++新标准是直接文件名不包含 .h,但是可以兼容老的标准 .h
#includeiostream
using namespace std;
2:c++的输出
c语言里输出使用的是scanf 和 printf
c++里输出使用的是cin 和 cout couta:ahello world!\nendl ;
cin变量名;
cout变量名;
如果没有引用命名空间,可以使用 std::cina;或者 std::couthello world!;
c++中的结构体 联合体 枚举
1,结构体,c++中的结构体和c语言中的结构体使用差不多
多出来的功能是:c++中结构体内是可以放函数的;c++中的结构体在声明或者定义的时候不需要加上struct
c语言 struct stu{}; struct stu a;
c++ struct stu{}; stu a;
2,联合体 一致 定义变量的时候,前面的union可以省略
3,枚举 一致
c++的函数
c++中的函数的参数是严格茶杯的,空参数代表没有任何参数,c++不支持隐式声明
函数可以实现重载,也就是允许相同命名的函数
函数的重载:在同一个作用域可以允许函数名称相同,但是它的函数类型以及参数个数不同
如果说需要在c++程序中把相关的函数编译按照c语言的形式来编译的话,需要在前面加上 extern C 告诉编译器这个函数按照c语言的形式来编译
c++函数支持默认值
c++当中多出来一个部分 内联函数 需要使用关键字 inline,内联函数实质上是使用宏来实现的,如果一个函数声明为内联函数的话,在编译的过程中会直接将函数的代码拷贝到相应调用函数的位置
如果说是普通函数的话,当调用相应函数时会通过函数名(也就是函数的地址)找到相关的函数执行
c++的内存分配
之前c语言当中的内存分配是使用malloc free
c++当中使用 new delete
使用方式 int* a = new int;//不保证里面的值为0
int* p = new int[5]; delete p[];//在堆中分配5个int大小的空间
int* b = new int(100);//在堆中分配内存空间大小为int的空间,并给b值赋初始值为100
c++中的引用
引用是基于指针的封装
c++中可以随意使用指针相应的内容
引用实质上给变量起别名
使用
int a = 5;int b = a;
指针和引用的差别:
指针存在空的指针,但是不存在空的引用,所以在定义引用时,就必须对引用进行初始化,否则会报错
当一个引用被初始化指向一个对象时,它就不能改变指向;指针可改变指向;
引用在创建时必须初始化,否则会报错;指针不初始化为野指针;
引用实质上就是用指针来实现的;
引用变量不另外占空间;而指针占4个字节空间;
c++是一门面向对象的语言
面向对象编程
对象--计算机程序的概念,每一个对象都有特定的类型
类跟对象:
怎样去定义一个类:
1.直接使用struct来定义
2.直接使用C++特有的class(类)
public://出现这个关键字后面的成员变量以及成员函数是该类型共有成员,可在任意地方使用
private://只能在内部使用
protected://受保护的
均可在结构体及类中使用,每次可使
文档评论(0)