zoukankan      html  css  js  c++  java
  • c++学习笔记(2)类的声名与实现的分离及内联函数

    一、类的声名与实现的分离

    和c函数声明与实现分离类似

    有.h : 类的声明

      .cpp : 类的实现

    在在一个类的cpp中应该包含本类的.h文件

    在cpp中类的使用:例:

     1 //Circle类
     2 //Circle.h
     3 class Circle{
     4 private:
     5   double radious;
     6 public:
     7   Circle();
     8 };
     9 //Circle.pp
    10 #include “Circle.h”
    11 Circle::Circle(){
    12 Radius=1;
    13 }

    在主函数中使用此类只需要在头文件中包含.h的名字即可。

    二、内联函数

        直接定义在类里面是内联函数,在cpp里面用inline

        内联函数要跟类的声明写在同一个文件中,否则编译会出错,就是内联函数最好写在声明类的.h文件中,而不是像一般函数那样写在实现类的.cpp文件中。 当然,内联函数还有另外一种写法,就是直接写在类中,此时,不必使用“inline”关键字。

        内联函数只是一种编译机制,用上面两种形式声明的函数仅仅是建议编译器进行内联,而编译器是否内联不一定。正如前面所说,函数调用的开销只是对小的函数不可忽略,对于重量级的函数还是可以忽略的,而且在绝大多数的场合,函数调用才是人间正道,才是解决问题的最佳。所以大多数编译器并不把带有循环、递归等或者代码比较多的函数进行内联编译,有的甚至不允许声明成内联的。

  • 相关阅读:
    二分图匹配详解
    树状数组略解
    质数算法略解
    主席树详解
    线段树略解
    【题解】Luogu P2073 送花
    【题解】Luogu P1533 可怜的狗狗
    分块入门
    【题解】Luogu CF86D Powerful array
    【题解】Luogu UVA12345 Dynamic len(set(a[L:R]))
  • 原文地址:https://www.cnblogs.com/czwangzheng/p/4663912.html
Copyright © 2011-2022 走看看