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++ 类的静态成员 | 类的数据成员和函数成员都可以被声明为静态的。 |