学习C++

1.为什么c++需要写using namespace std?
using namespace std;告诉编译器使用 std 命名空间。命名空间是 C++ 中一个相对新的概念。
2.继承和派生
class 派生类名A:继承方式说明符 基类名B
{
};
可以说是A继承于B,也可以说是B派生A。A可以直接访问基类B中的变量。
3.构造函数和析构函数

class line
{
line();//构造函数;1.与类名相同2.可用于初始某变量
~line();//析构函数
};

拷贝函数是一种特殊的构造函数,且总是存在(即没有自定义也会有默认)。
类名(const 类名 &obj)
4.友元friend
友元函数并不是成员函数,因此再类外声明时不需要带类名。成员函数再调用时会使用this指针,而友元函数时非成员函数,所以必须借助对象访问。
借助友元(friend),可以使得其他类中的成员函数以及全局范围内的函数访问当前类的 private 成员

class Address;  //提前声明Address类

//声明Student类
class Student{
public:
    void show(Address *addr);
private:
    char *m_name;
};
//声明Address类
class Address{
public:
    //将Student类中的成员函数show()声明为友元函数
    friend void Student::show(Address *addr);
private:
    char *m_province; 
};
void Student::show(Address *addr)
{
    cout<<m_name<<m_age<<m_score<<endl;//访问本类变量不需要对象
    cout<<addr->m_province<<addr->m_city<<addr->m_district<<endl;//访问友元变量需要借助对象
}

友元也可以声明为友元类,但这样不太安全。友元的关系时单向的,且没有传递性
5.类中没有声明Public或private的是什么?
默认是public
6.注意在类的成员函数相互调用时,要先对类进行提前声明,就像c语言的函数一样,需要提前声明。而提前声明的类作为一个不完整的类,不能直接声明对象,只有等定义完整后,才可以。
7.inline内联函数
初学者少用。
主要作用是,通过占用空间换取更快的处理速度。一般使用范围限制在没有循环,没有开关函数且程序少于10行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值