c++类的基础

1、抽象:

抽象出公有特性,包括公有动作,公有数据。

2、类:类是具有相同属性和行为的一组对象的集合(变量和函数)

声明格式:

class 类名(Dog)

{

类体:(数据和函数成员)默认为私有成员,结构体默认为公有成员

}

3、类成员的访问权限:public ,private,protected

3.1函数成员的实现:

主要有两类:1、在直接申明函数成员时实现

      2、在类的外部实现(内联inline 函数和普通函数)

#include<iostream>
using namespace std;

class Dog
{
  private:
  int age;
  public:
  int func(int a);
  int func2(int c);
  int func1(int b)//类内部实现的函数成员
  {
  return age = b;
  }
};
inline int Dog::func(int a)//外部实现的内联函数
{
  return age = a;
}

int Dog::func2(int c)//外部实现的普通函数
{
  while(c<5)
  {
    c++;
  }
return c;
}
int main()
{
  Dog d1;
  int k = d1.func(3);
  int j = d1.func1(4);
  int q = d1.func2(0);
  cout<<"k= "<<k<<" ";
  cout<<"j= "<<j<<" ";
  cout<<"q= "<<q<<" ";

}

结果:

k= 3
j= 4

q=5

-------------------------------------------------------------------

4、对象:对象就是变量,是类的实例化---->用一个类描述一个对象(属性和动作(数据和函数))

类型  变量名

class Dog d1;或者去掉类的关键字 Dog d1;

4.1类成员的访问:

私有成员只能在类的私有函数成员内访问,(这里并没有规定是哪种权限的成员),类的对象不能再类的外部访问私有成员;

保护成员只能在类的私有函数成员内访问,(这里并没有规定是哪种权限的成员),类的对象不能再类的外部访问私有成员;

公有成员能在类的私有函数成员内访问,类的对象也能在类的外部访问私有成员。

与struct的区别:struct没有函数成员,并且全为公有权限;

类中的数据成员尽量初始化为私有成员(通过公有函数来来访问)

4.2数据成员的初始化:

通过类内的公有函数来进行初始化:如下例:

#include<iostream>
class Rec
{
private:
    int longs;
    int height;
public:
    int area(int a,int b)
    {
        longs = a;
        height = b;
        return longs*height;
    }

};
using namespace std;
int main()
{
Rec rec1;
int sum;
sum = rec1.area(3,4);
cout<<"area = "<<sum<<"
";
}
原文地址:https://www.cnblogs.com/defen/p/5288894.html