Latest web development tutorials

C ++ klasy i obiekty

C ++ język oparty na C dodaje programowania obiektowego, C ++ obsługuje programowania obiektowego. Klasa C ++ jest funkcja rdzenia, często określane jako typy zdefiniowane przez użytkownika.

Klasa stosuje się do wytworzenia określonego obiektu, zawierający reprezentacji danych oraz sposób przetwarzania danych. Dane i metody klasy określa się jako członków tej klasy. Funkcja w klasie nazywane są członkami grupy.

C ++ definicja klasy

Definicja klasy jest w istocie plan, aby określić typ danych. Nie ma żadnych danych w rzeczywistości określić, ale określa nazwę klasy, co oznacza, że ​​jest to definiuje klasy obiektów, w tym co i co operacje mogą być wykonywane na obiekcie.

Definicja klasy jest na podstawie słów kluczowych doklasy na początku, a następnie przez klasę.Ciało klasy znajduje się w parę nawiasów. To musi być zakończona średnikiem lub listy instrukcji po definicji klasy. Na przykład, używamy słowa kluczowegoclass, aby zdefiniować typ danych Box, co następuje:

class Box
{
   public:
      double length;   // Length of a box
      double breadth;  // Breadth of a box
      double height;   // Height of a box
};

Słowopublicznego określa członków klasy atrybutów dostępu.W ramach klasy obiektów, członkowie publiczne poza klasą jest dostępny. Można również określić członkowie klasy sąprywatne lub chronione,które będziemy później wytłumaczyć.

Definicje obiektów C ++

Klasa dostarcza plan dla obiektu, więc w zasadzie opiera się na klasy obiektów do tworzenia. Deklarowana obiektem klasy, podobnie deklaracji zmiennej tego samego typu podstawowego. Poniższa instrukcja deklaruje polu klasie dwa obiekty:

Box Box1;          // 声明 Box1,类型为 Box
Box Box2;          // 声明 Box2,类型为 Box

Box1 i Box2 obiekty posiadają własne członków danych.

Członkowie dane dostępowe

Publiczne członków danych z klasy obiektów mogą bezpośrednio korzystać z operatora dostępu członkowskiego (). Aby uzyskać dostęp. Aby lepiej zrozumieć te pojęcia, spróbujmy następujące przykłady:

#include <iostream>

using namespace std;

class Box
{
   public:
      double length;   // 长度
      double breadth;  // 宽度
      double height;   // 高度
};

int main( )
{
   Box Box1;        // 声明 Box1,类型为 Box
   Box Box2;        // 声明 Box2,类型为 Box
   double volume = 0.0;     // 用于存储体积
 
   // box 1 详述
   Box1.height = 5.0; 
   Box1.length = 6.0; 
   Box1.breadth = 7.0;

   // box 2 详述
   Box2.height = 10.0;
   Box2.length = 12.0;
   Box2.breadth = 13.0;

   // box 1 的体积
   volume = Box1.height * Box1.length * Box1.breadth;
   cout << "Box1 的体积:" << volume <<endl;

   // box 2 的体积
   volume = Box2.height * Box2.length * Box2.breadth;
   cout << "Box2 的体积:" << volume <<endl;
   return 0;
}

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Box1 的体积:210
Box2 的体积:1560

Należy zauważyć, że członkowie członków prywatnych i chronionych nie można korzystać z bezpośredniego dostępu operatora (członek). Aby uzyskać bezpośredni dostęp. Dowiemy się w kolejnych tutoriali, w jaki sposób uzyskać dostęp do prywatnych członków i chronione.

Szczegółowe Class & Obiekty

Do tej pory mamy podstawową wiedzę na temat klas i obiektów C ++. Poniższa lista wymienia także kilka innych klas C ++ i obiektów związanych z nimi pojęć, można kliknąć na odpowiedni link, aby dowiedzieć się.

概念描述
类成员函数 类的成员函数是指那些把定义和原型写在类定义内部的函数,就像类定义中的其他变量一样。
类访问修饰符 类成员可以被定义为 public、private 或 protected。默认情况下是定义为 private。
构造函数 & 析构函数 类的构造函数是一种特殊的函数,在创建一个新的对象时调用。类的析构函数也是一种特殊的函数,在删除所创建的对象时调用。
C++ 拷贝构造函数 拷贝构造函数,是一种特殊的构造函数,它在创建对象时,是使用同一类中之前创建的对象来初始化新创建的对象。
C++ 友元函数 友元函数可以访问类的 private 和 protected 成员。
C++ 内联函数 通过内联函数,编译器试图在调用函数的地方扩展函数体中的代码。
C++ 中的 this 指针 每个对象都有一个特殊的指针 this,它指向对象本身。
C++ 中指向类的指针 指向类的指针方式如同指向结构的指针。实际上,类可以看成是一个带有函数的结构。
C++ 类的静态成员 类的数据成员和函数成员都可以被声明为静态的。