c++学习(知识点整理)

 c++分为core c++(标准c++)  : 不依赖与任何操作系统的c++。    u++ 在Unix下的C++编程。

          using namespace std (standard)//命名空间

          在C++中双冒号(::)被成为域操作符。我们可以非正式地把域看作是一个可视窗口 全
局域的对象在它被定义的整个文件里 一直到文件末尾 都是可见的。

         域操作符一般用于指定某个函数是属于哪个类的。例:Animal::breathe(); 说明breathe()方法是Animal类里的

          引用 reference 即 IntArray &rhs 引用是一种没有
指针语法的指针 因此 我们写成 rhs._size 而不是 rhs->_size 与指针一样 引用提供
对对象的间接访问 。

 

1, c++支持用指针类型来存放对象的内存地址值。指针的主要用处是管理和操纵动态分配的内存。
取地址操作符(&) 
 例: int ival;
      int *ping;//一个指向int类型的指针
      ping = &ival;//把ival内存地址值赋给ping


2, C++中提供了一套输入输出流类的对象,他们是cin、cout和cerr,对应c语言中的三个文件指针stdin、stdout、stderr,分别指向终端输入、终端输出和标准出错输出(也称终端输出)。

cin和cout可以自动判别输入输出数据类型而自动调整输入输出格式。

在输出中我们还使用endl(end of line),表示换行,相当于C语言的‘\n’,表示输出一个换行


3, 在C++中,结构体是可以包含函数的。
例:struct Point
    {
 int x;
 int y;
 void output()
 {
     cout<<x<<endl<<y<<endl;
 }
     };

用struct定义的类和普通类的区别:  通过struct定义的类里的所有成员都是public类型的;而普通类在缺省的情况下的成员变量和成员函数都是private类型的。

 4, 析构函数: 例
当对象的生命周期结束的时候,系统会自动调用析构函数,回收其所占有的内存空间。
析构函数就是“反向”的构造函数,析构函数不允许有返回值,更重要的是析构函数不允许带有参数,并且一个类中只能有一个析构函数。

5, 以下两种方式不能构成函数的重载:
 第一种情况:(1)void output();
      (2)int output();
 第二种情况:(1)void output(int a,int b=5);
      (2)void output(int a);

重载构成的条件:函数的参数类型、参数个数不同,才能构成函数的重载。


6, this指针是一个隐含的指针,它是指向对象本身,代表了对象的地址。

7, 每个类后面都必须加一个";"分号。
8, 在C++中,用“:”表示继承。
 例:class Fish : public Animal  在这里如果父类是被public修饰,见图------

c++小知识点 - lglchq.327 - ★☆★梦在远方★☆★
9, 在一个类中如果声明把一个成员函数声明为protected,则在其类外部是不可以访问的,
但通过类的继承关系是可以的。

10,在子类中会默认自动调用父类的构造函数(无参)。即先调用父类的构造函数、再调用子类的构造函数; 而在子类的析构函数中,则正好相反,即先执行子类的析构函数、再执行父类的析构函数。

11,Fish():Animal(400,300) 这个例子是通过子类的无参的构造函数,来给父类的有参的构造函数赋值。这里的父类只有有参的构造函数,没有无参的构造函数。

12, 通过无参的构造方法为常量赋值的一种方式。
 例:class Fish : public Animal  //继承父类
     {
  public: //这里的修饰符的作用是截止下一个修饰符出现为止,之前的成员变量或成员函数均为该修饰符类型
     Fish():Animal(400,300),a(1)   //为父类有参构造方法、常量a赋值,
     {
   cout<<"fish construct"<<endl;
          }
  private:
    const int a;  /常量a
      }

 

13.    函数的覆盖时发生在两个类之间(父类与子类)。而函数的重载是发生在一个类之间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值