c++入门【菜鸟学习日记】

从c到c++

c++包含了整个c,c是建立c++的基础。c++包括c的全部特征、属性和优点,同时添加了面向对象编程(oop)的完全支持。

c++语言包括过程性语言部分和类部分。过程性语言部分与c并无本质的差别,类部分是c中所没有的,它是面向对象程序设计的主体。

面向对象程序设计的本质是把数据和处理数据的过程当成一个整体——对象

面向对象程序设计的实现需要封装数据隐藏技术,需要**继承和多态性##技术。

1.C++基本的输入输出流

C&C++输入输出对比
cout是标准输出流对象,<< 是输出操作符;
cin是标准输入流对象,>>是输入操作符;
endl是换行操作符;
他们都属于C++标准库,所以都在std的名字空间里面

2.命名空间(namespac )

以关键字namespace开头,给它起一个名字,用花括号把文件的一部分括起来

namespace You
{
int a=1;
}
namespace My
{
int a=2;
}

int main()
{
printf("%d\n",My::a);
printf("%d\n",You::a);
return 0;
}

::是作用域解析符
那命名空间是用来干嘛的呢?
答:名字空间域可以解决全局命名冲突的问题。
上面的代码中有两个变量a,但这两个a却是不同的,因为他们作用的域不同。
注意:命名空间作用域是不能以分号结尾。

3.重载(C++为什么支持重载?)

什么是重载?

函数名相同,参数列表不同,返回值可同可不同(在同一作用域类,一组函数内)

4.C++缺省参数

什么叫参数缺省?

举个例子

int Add1(int a=10,int b=20)//全缺省参数
{
return a+b;
}

int Add2(int a,int b=20)//半缺省参数
(但只能缺省前面的,不能缺省后面的)

{
return a+b;
}

int main()
{
cout<<Add1(1,2)<<endl;
//3
cout<<Add1(  )<<endl;
//30
cout<<Add1(5)< a+b;
//25
return 0;
}

5.指针和引用(概念、使用方法、做参数、做返回值的作用,指针和引用的区别)

引用就是个别名,当建立引用时,程序用另一个变量或对象的名字初始化它。从那时起,引用作为目标的别名而使用,对引用的改动实际就是对目标的改动。

定义的格式为:
类型 &引用变量名 = 已定义过的变量名;
例如:
int a;
 int& b=a;

b就是a的别名

引用的特点:
1. 一个变量可取多个别名
2. 引用在声明时必须被初始化,否则会产生编译错误;
3. 引用只能在初始化的时候引用一次,不能改变为再引用其他的变量。
4.引用不是值,不占存储空间,所以引用只有声明,没有定义;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值