c++学习日记与体会(不断更新)

*在使用无参构造函数创建对象时不可以在后面加括号

   Circle circle1();是错误的

  CIrcle circle1;是正确的

*避免多次包含

  如果在head filessource files 里多次定义了某个类的头文件,可以用以下方法:

  #ifndef CIRCLE_H

  #define CIRCLE_H

    {

  }

  #endif

*内联函数提高函数执行效率(适用于短函数)

  inline int number;

  或者直接在class类里面写函数定义

*getset函数是为了保证数据域封装

  Get函数是一个访问器:

  double getRadius();

  当返回类型为bool型时:命名习惯:bool  isPropertyName();

  Set函数是一个更改器

  void setRadius(double);

*变量可以在声明时初始化,但一个类成员不可以在声明时初始化

*string s(“welcome to c++);等价于string s = “welcome to c++”; 等价于char s1[] = “welcome to c++”;//前者效率更高

*string s;//创建一个空字符串

*参数为对象的时候,实际上是传值方式传递,将对象的内容复制给函数的参数

   传引用实际上表示:函数的参数是对象的一个别名,最好用传引用

*static 关键字表示,该类无论哪个对象都可以调用,并且都调用同一个成员

  创建circle1对象使NumberOfObject加一,创建circle2对象又使NumberOfObject加一

  静态变量和静态函数无须创建对象即可访问

  //应使用ClassName::functionName(arguments)调用静态函数,使用ClassName::staticVariable访问静态变量,可提高程序可读性

  什么情况下声明为静态:如果变量和函数不依赖于任何类对象,就应该声明为静态

*const关键字:表示只读成员函数,

  语法:把const关键字放在函数头的结尾即可:int getNumber()const;

  定义的时候也要在函数头后面加constA

猜你喜欢

转载自www.cnblogs.com/miaoqianling/p/8952524.html