国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C++ 基礎(chǔ)知識(shí) 五 ( 來(lái)看來(lái)看 面向?qū)ο蟮睦^承 上篇 )

這篇具有很好參考價(jià)值的文章主要介紹了C++ 基礎(chǔ)知識(shí) 五 ( 來(lái)看來(lái)看 面向?qū)ο蟮睦^承 上篇 )。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、簡(jiǎn)介

1 什么是 C++ 繼承

C++ 繼承是指派生類(子類)從基類(父類)繼承屬性和行為的過(guò)程。我們可以創(chuàng)建一個(gè)新的類,該類可以繼承另一個(gè)類的數(shù)據(jù)屬性和方法。

// 定義一個(gè)父類 Person
class Person {
public:
    string name;
    int age;
    string gender;
    void eat() {
        cout << name << " is eating. \n";
    }
};

// 定義一個(gè)子類 Student 繼承父類 Person 
class Student : public Person {
public:
    string school;
    void study() {
        cout << name << " is studying at " << school << ". \n";
    }
};

在上述代碼中,我們定義了一個(gè)父類 Person 與一個(gè)子類 Student。Student 類繼承了 Person 類的屬性和方法,包括 name、age、gender 和 eat() 函數(shù)。

2 繼承的目的和作用

繼承的主要目的是代碼重用:我們可以重用現(xiàn)有的代碼,避免重復(fù)編寫相同的代碼,從而提高生產(chǎn)效率。此外,繼承還使得代碼更易于管理和維護(hù),因?yàn)槲覀兛梢酝ㄟ^(guò)繼承將代碼組織成層次結(jié)構(gòu)。

// 使用繼承創(chuàng)建 Student 對(duì)象
Student myStudent;
myStudent.name = "Tom";
myStudent.age = 18;
myStudent.gender = "Male";
myStudent.school = "ABC University";

myStudent.eat();   // 輸出 "Tom is eating."
myStudent.study(); // 輸出 "Tom is studying at ABC University."

二、定義

繼承是面向?qū)ο缶幊陶Z(yǔ)言中一種非常常見(jiàn)的概念。繼承可以讓類之間實(shí)現(xiàn)代碼重用,使得程序更加易于擴(kuò)展和維護(hù)。在 C++ 中可以使用派生類和基類來(lái)實(shí)現(xiàn)繼承。

1 派生類和基類的定義

派生類是指從一個(gè)或多個(gè)基類中派生出來(lái)的類?;愂侵冈谝粋€(gè)類繼承另一個(gè)類的語(yǔ)法中被繼承的那個(gè)類。在 C++ 中,我們可以通過(guò)如下語(yǔ)法定義一個(gè)派生類:

class DerivedClass : access-specifier BaseClass {
public:
    // DerivedClass 的公有成員
protected:
    // DerivedClass 的保護(hù)成員
private:
    // DerivedClass 的私有成員
};

在上述代碼中DerivedClass是我們新創(chuàng)建的類的名稱,access-specifier 可以是 public、protected、或 private。BaseClass 是我們想要從中繼承屬性和方法的類,我們可以在 access-specifier 后面指定 BaseClass 的訪問(wèn)類型。

代碼示例:
定義一個(gè)派生類 DerivedPerson,從基類 Person 繼承屬性和方法 :

#include <iostream>
#include <string>
using namespace std;

class Person {
public:
    string name;
    int age;
    void eat() {
        cout << name << " is eating.\n";
    }
};

class DerivedPerson : public Person {
public:
    void work() {
        cout << name << " is working.\n";
    }
};

int main() {
    DerivedPerson p;
    p.name = "John";
    p.age = 30;
    p.eat(); // 輸出 "John is eating."
    p.work(); // 輸出 "John is working."
    return 0;
}

2 公有繼承和私有繼承

C++ 中有三種類型的繼承:公有繼承、保護(hù)繼承和私有繼承。
公有繼承是最常用的繼承類型之一。在公有繼承中派生類獲得了基類的公有成員和保護(hù)成員,但是基類的私有成員不會(huì)被派生類直接訪問(wèn)。

公有繼承的用法 示例:
代碼定義一個(gè)基類 Base 和一個(gè)派生類 Derived
在Derived中使用公有繼承來(lái)繼承 Base類的屬性和方法。在 main() 函數(shù)中創(chuàng)建一個(gè)Derived對(duì)象d,然后調(diào)用 set() 和 print() 函數(shù)來(lái)設(shè)置和獲取成員變量 x 的值。需要注意的是此處通過(guò)派生類的對(duì)象訪問(wèn)了基類的公有成員 x 和 print()

#include <iostream>
using namespace std;

class Base {
public:
    int x;
    void print() {
        cout << "Base class: x = " << x << "\n";
    }
};

class Derived : public Base {
public:
    void set(int n) {
        x = n;
    }
};

int main() {
    Derived d;
    d.set(10);
    d.print(); // 輸出 "Base class: x = 10"
    return 0;
}

除了公有繼承C++ 中還有保護(hù)繼承和私有繼承。
在保護(hù)繼承中,基類的公有成員和保護(hù)成員都成為了派生類的保護(hù)成員。
在私有繼承中,基類的公有成員和保護(hù)成員都成為了派生類的私有成員。
挑選合適的繼承類型對(duì)于代碼的設(shè)計(jì)非常重要,在實(shí)際編碼中需要仔細(xì)考慮。

三、訪問(wèn)控制

1 派生類對(duì)基類成員的訪問(wèn)權(quán)限

在C++中如果一個(gè)類派生自另一個(gè)類,則派生類可以繼承基類的成員變量和成員函數(shù)。在繼承過(guò)程中訪問(wèn)權(quán)限是非常重要的一個(gè)問(wèn)題。
有三種訪問(wèn)權(quán)限:public、protected 和 private。當(dāng)一個(gè)類派生自另一個(gè)類時(shí)繼承的訪問(wèn)權(quán)限可以通過(guò)下列三種方式指定:

  • public 繼承:基類的 public 成員在派生類中保持 public 屬性,基類的 protected 成員在派生類中保持 protected 屬性,基類的 private 成員在派生類中不可訪問(wèn)。
  • protected 繼承:基類的 public 和 protected 成員在派生類中都被保護(hù)起來(lái),不能被外部直接訪問(wèn)。這種方式很少使用,一般只有在繼承鏈比較復(fù)雜的時(shí)候才使用。
  • private 繼承:基類的 public 和 protected 成員在派生類中均變?yōu)?private 屬性,不能被外部直接訪問(wèn)。這種方式也比較少使用,一般只有在需要從多個(gè)類中繼承同一個(gè)基類的時(shí)候才使用。

下面是一個(gè)使用 public 繼承的例子,演示了派生類對(duì)基類成員的訪問(wèn)權(quán)限:

在代碼中Derived類繼承了Base類的公有成員變量 x 和成員函數(shù) print(),以及保護(hù)成員變量y
在Derived類的成員函數(shù)中可以訪問(wèn)這些成員但是不能直接訪問(wèn) Base 類的私有成員z

#include <iostream>
using namespace std;

class Base {
public:
    int x;
    void print() {
        cout << "Base class: x = " << x << "\n";
    }
protected:
    int y;
private:
    int z;
};

class Derived : public Base {
public:
    void set(int a, int b, int c) {
        x = a;
        y = b;
        // z = c; 無(wú)法訪問(wèn)基類的私有成員
    }
    void print1() {
        cout << "Derived class: x = " << x << "\n";
    }
    void print2() {
        cout << "Derived class: y = " << y << "\n";
    }
    // void print3() { cout << "Derived class: z = " << z << "\n"; } 無(wú)法訪問(wèn)基類的私有成員
};

int main() {
    Derived d;
    d.set(1, 2, 3);
    d.print(); // 輸出 "Base class: x = 1"
    // cout << d.y; 無(wú)法訪問(wèn)基類的保護(hù)成員
    d.print1(); // 輸出 "Derived class: x = 1"
    d.print2(); // 輸出 "Derived class: y = 2"
    return 0;
}

2 如何控制訪問(wèn)權(quán)限

在C++中可以使用訪問(wèn)修飾符來(lái)控制類的成員的訪問(wèn)權(quán)限。訪問(wèn)修飾符可以放到類的定義中的任何位置,而且多次使用訪問(wèn)修飾符是合法的,因?yàn)楹竺娴男揎椃麜?huì)覆蓋之前的修飾符。

  • public:公有修飾符可以從類的任何地方訪問(wèn)公有成員也可以從派生類的任何地方訪問(wèn)公有成員。
  • protected:保護(hù)修飾符只能從類的內(nèi)部或派生類的內(nèi)部訪問(wèn)保護(hù)成員外部不能訪問(wèn)。
  • private:私有修飾符只能從類的內(nèi)部訪問(wèn)私有成員派生類的內(nèi)部不能訪問(wèn)。

下面是一個(gè)使用訪問(wèn)修飾符的例子,演示了如何控制成員的訪問(wèn)權(quán)限:

在代碼中定義了MyClass類和MyDerivedClass類。
在MyClass中使用 public、protected 和 private 三種訪問(wèn)修飾符定義了三個(gè)不同的成員變量。在MyDerivedClass中從MyClass中繼承了各種成員,并在成員函數(shù)中分別訪問(wèn)了這些成員。需要注意的是,在派生類中可以訪問(wèn)基類的 public 和 protected 成員,但是不能訪問(wèn)基類的 private 成員。

#include <iostream>
using namespace std;

class MyClass {
public:
    int a;          // 公有成員變量
protected:
    int b;          // 保護(hù)成員變量
private:
    int c;          // 私有成員變量

public:
    void set(int x, int y, int z) {
        a = x;
        b = y;
        c = z;
    }
    void print() {
        cout << "a = " << a << ", b = " << b << ", c = " << c << "\n";
    }
};

class MyDerivedClass : public MyClass {
public:
    void setDerived(int x, int y, int z) {
        // a 和 b 都是 public 和 protected 成員,可以直接訪問(wèn)
        a = x;
        b = y;
        // c 是 private 成員,無(wú)法直接訪問(wèn)
        //c = z;
    }
    void printDerived() {
        // a 是 public 成員,可以直接訪問(wèn)
        cout << "a = " << a << "\n";
        // b 是 protected 成員,在派生類的內(nèi)部可以訪問(wèn)
        cout << "b = " << b << "\n";
        // c 是 private 成員,無(wú)法直接訪問(wèn)
        //cout << "c = " << c << "\n";
    }
};

int main() {
    MyClass obj;
    obj.set(1, 2, 3);
    obj.print();

    MyDerivedClass obj2;
    obj2.setDerived(4, 5, 6);
    obj2.printDerived();

    return 0;
}

四、虛函數(shù)繼承

1 繼承中的虛函數(shù)機(jī)制

在C++ 中如果一個(gè)類有虛函數(shù),那么當(dāng)這個(gè)類被繼承時(shí)在派生類中也會(huì)有虛函數(shù)表 (V-Table)。當(dāng)使用基類指針或引用指向一個(gè)派生類對(duì)象時(shí)會(huì)根據(jù)虛函數(shù)表找到正確的虛函數(shù)。這種機(jī)制被稱為動(dòng)態(tài)聯(lián)編,也就是運(yùn)行時(shí)多態(tài)或后期綁定。

代碼中定義了一個(gè)Base 類和一個(gè) Derived 類。在 Base 類中有一個(gè)虛函數(shù) print()。
Derived類繼承了Base 類并重寫了 print() 函數(shù)。在 main() 函數(shù)中創(chuàng)建了 Derived 類的對(duì)象 d并使用 Base 類的指針 b_ptr 指向它,然后調(diào)用 print() 函數(shù)輸出了 "Derived"

#include <iostream>
using namespace std;

class Base {
public:
    virtual void print() {
        cout << "Base\n";
    }
};

class Derived : public Base {
public:
    void print() override {
        cout << "Derived\n";
    }
};

int main() {
    Derived d;
    Base* b_ptr = &d;
    b_ptr->print(); // Derived
    return 0;
}

2 在派生類中重寫虛函數(shù)

派生類可以通過(guò)重寫基類中的虛函數(shù)來(lái)改變其行為

在代碼中使用了上一個(gè)示例中的 Base 類和 Derived 類并在 Derived 類中重寫了print() 函數(shù)
main() 函數(shù)中通過(guò)Base類和Derived類的指針調(diào)用 print() 函數(shù)。當(dāng)使用 Base 類指針 b_ptr2 指向 Base 類的對(duì)象時(shí),調(diào)用的是 Base 類中的 print() 函數(shù),輸出了 "Base"。當(dāng)使用 Base 類指針 b_ptr 指向 Derived 類的對(duì)象時(shí),調(diào)用的是 Derived 類中的 print() 函數(shù),輸出了 "Derived"。

#include <iostream>
using namespace std;

class Base {
public:
    virtual void print() {
        cout << "Base\n";
    }
};

class Derived : public Base {
public:
    void print() override {
        cout << "Derived\n";
    }
};

int main() {
    Derived d;
    Base* b_ptr = &d;
    b_ptr->print(); // Derived

    Base base;
    Base* b_ptr2 = &base;
    b_ptr2->print(); // Base
    return 0;
}

五、多重繼承

在C++ 中一個(gè)派生類可以同時(shí)繼承多個(gè)基類,這種繼承方式被稱為多重繼承。

1 語(yǔ)法實(shí)現(xiàn)

多重繼承是指一個(gè)派生類可以同時(shí)繼承多個(gè)基類,其中每個(gè)基類可以有自己的成員函數(shù)和成員變量。一個(gè)類可以聲明對(duì)多個(gè)基類的繼承方式語(yǔ)法如下:

class Derived : access-specifier Base1, access-specifier Base2, ... {
    // Derived class members and functions
};

其中,access-specifier 指定了基類成員在派生類中的訪問(wèn)權(quán)限,可以用 publicprotectedprivate 指定。如果沒(méi)有指定,則默認(rèn)為 private。

2 派生類和基類成員的訪問(wèn)規(guī)則

在多繼承中派生類對(duì)象同時(shí)包含多個(gè)基類對(duì)象的數(shù)據(jù)成員和成員函數(shù)。根據(jù)繼承方式的不同,基類成員的訪問(wèn)規(guī)則也會(huì)有所不同。

2.1 共同基類的繼承

如果多個(gè)基類都派生自同一個(gè)基類,那么這個(gè)基類的數(shù)據(jù)成員和成員函數(shù)只會(huì)在派生類中出現(xiàn)一次。在訪問(wèn)這個(gè)基類的成員時(shí),將使用這個(gè)共同基類的數(shù)據(jù)成員和成員函數(shù)。

代碼示例:
在代碼中創(chuàng)建了 Animal、Mammal、Dog、CatPersianCat 類。
MammalCat 都是直接繼承自 Animal,DogPersianCat 分別是直接繼承自 MammalCat。在 PersianCat 類中同時(shí)使用了 CatMammal 作為基類

main() 函數(shù)中創(chuàng)建了一個(gè) PersianCat 對(duì)象,并調(diào)用了它的 show_info() 函數(shù)。在這個(gè)函數(shù)中調(diào)用了 Animal、MammalCat 這三個(gè)基類的一些成員函數(shù),它們分別是在不同的層級(jí)中定義的。由于它們都繼承自共同的基類 Animal,因此在訪問(wèn)這個(gè)基類的成員時(shí),它們都使用同一個(gè) Animal 對(duì)象的數(shù)據(jù)成員和成員函數(shù)。在控制臺(tái)輸出中可以看到不同的動(dòng)物都調(diào)用了正確的成員函數(shù)

#include <iostream>
using namespace std;

class Animal {
public:
    void eat() {
        cout << "Animal is eating\n";
    }
};

class Mammal : public Animal {
public:
    void run() {
        cout << "Mammal is running\n";
    }
};

class Dog : public Mammal {
public:
    void bark() {
        cout << "Dog is barking\n";
    }
};

class Cat : public Animal {
public:
    void meow() {
        cout << "Cat is meowing\n";
    }
};

class PersianCat : public Cat, public Mammal {
public:
    void show_info() {
        eat(); // 使用Animal中的eat()函數(shù)
        run(); // 使用Mammal中的run()函數(shù)
        meow(); // 使用Cat中的meow()函數(shù)
        cout << "A Persian cat\n";
    }
};

int main() {
    PersianCat persian_cat;
    persian_cat.show_info(); 
    return 0;
}

2.2 不同基類的繼承

當(dāng)派生類繼承了多個(gè)不同的基類時(shí),會(huì)出現(xiàn)基類成員的二義性,需要使用作用域解析運(yùn)算符來(lái)解決。

代碼示例:
代碼中創(chuàng)建了 ABC 類。C 類同時(shí)繼承自 AB。在 C 類的 show_info() 函數(shù)中,我們使用作用域解析運(yùn)算符 :: 來(lái)指定調(diào)用哪個(gè)基類的 func() 函數(shù)。在 main() 函數(shù)中,我們創(chuàng)建了 C 對(duì)象,并調(diào)用了它的 show_info() 函數(shù)。在控制臺(tái)輸出中可以看到它分別調(diào)用了兩個(gè)基類的 func() 函數(shù)。

#include <iostream>
using namespace std;

class A {
public:
    void func() {
        cout << "class A" << endl;
    }
};

class B {
public:
    void func() {
        cout << "class B" << endl;
    }
};

class C : public A, public B {
public:
    void show_info() {
        A::func();
        B::func();
    }
};

int main() {
    C c;
    c.show_info(); // class A \n class B
    return 0;
}

六、小結(jié)回顧

C++中訪問(wèn)控制通過(guò) public、protected 和 private 關(guān)鍵字來(lái)實(shí)現(xiàn)。public 表示公開(kāi)的可以被任何地方訪問(wèn)。protected 表示受保護(hù)的只有本類和其子類可以訪問(wèn)。private 表示私有的只有本類可以訪問(wèn)。

C++中的虛函數(shù)繼承可以實(shí)現(xiàn)多態(tài)性。子類可以重載父類的虛函數(shù),并且子類的對(duì)象可以看做是父類的對(duì)象從而實(shí)現(xiàn)多態(tài)性。

多重繼承是 C++ 中的一個(gè)重要特性允許一個(gè)類從多個(gè)基類中繼承屬性和方法。在實(shí)現(xiàn)上如果一個(gè)類同時(shí)繼承了多個(gè)基類就可能出現(xiàn)菱形繼承問(wèn)題。為了避免這種問(wèn)題C++ 提供了虛繼承來(lái)解決。虛繼承可以實(shí)現(xiàn)讓派生類只繼承一份基類的數(shù)據(jù)成員,從而避免數(shù)據(jù)冗余和數(shù)據(jù)不一致的問(wèn)題。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-437123.html

到了這里,關(guān)于C++ 基礎(chǔ)知識(shí) 五 ( 來(lái)看來(lái)看 面向?qū)ο蟮睦^承 上篇 )的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • python 面向?qū)ο蟮母拍罴笆褂梅椒▇(基礎(chǔ)小知識(shí))

    python 面向?qū)ο蟮母拍罴笆褂梅椒▇(基礎(chǔ)小知識(shí))

    編程語(yǔ)言中,一般有兩種編程思維,面向過(guò)程和面向?qū)ο蟆?面向過(guò)程,看重的是解決問(wèn)題的過(guò)程。 這好比我們解決日常生活問(wèn)題差不多,分析解決問(wèn)題的步驟,然后一步一步的解決。 而面向?qū)ο笫且环N抽象,抽象是指用分類的眼光去看世界的一種方法。 Python 就是一門面向

    2024年02月06日
    瀏覽(20)
  • [ XJTUSE ]JAVA語(yǔ)言基礎(chǔ)知識(shí)——第一章 面向?qū)ο蟪绦蛟O(shè)計(jì)思想

    類描述了一組有相同 特性 (屬性)和相同 行為 (方法)的對(duì)象,類和對(duì)象是面向?qū)ο笏枷氲膬蓚€(gè)核心概念 · 人類是一種類,每一個(gè)具體的人則是這個(gè)類的對(duì)象 用面向?qū)ο蟪绦騺?lái)模擬真實(shí)世界 發(fā)現(xiàn)并創(chuàng)建類 發(fā)現(xiàn)類的特征 發(fā)現(xiàn)類的行為 在面向?qū)ο蟪绦蛑?,?duì)象的特征由各種

    2023年04月13日
    瀏覽(230)
  • Java 學(xué)習(xí)路線:基礎(chǔ)知識(shí)、數(shù)據(jù)類型、條件語(yǔ)句、函數(shù)、循環(huán)、異常處理、數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο缶幊獭?、文件?API

    Java 是一種由 Sun Microsystems 于 1995 年首次發(fā)布的編程語(yǔ)言和計(jì)算平臺(tái)。Java 是一種通用的、基于類的、面向?qū)ο蟮木幊陶Z(yǔ)言,旨在減少實(shí)現(xiàn)依賴性。它是一個(gè)應(yīng)用程序開(kāi)發(fā)的計(jì)算平臺(tái)。Java 快速、安全、可靠,因此在筆記本電腦、數(shù)據(jù)中心、游戲機(jī)、科學(xué)超級(jí)計(jì)算機(jī)、手機(jī)等領(lǐng)

    2024年03月24日
    瀏覽(39)
  • C++類和對(duì)象基礎(chǔ)知識(shí)詳解

    C++類和對(duì)象基礎(chǔ)知識(shí)詳解

    1.一切皆是對(duì)象。如下圖: ·女人是一個(gè)對(duì)象 ·鞋子是一個(gè)對(duì)象 ·包包是一個(gè)對(duì)象 ·衣服是一個(gè)對(duì)象 ·褲子是一個(gè)對(duì)象 ·手鏈?zhǔn)且粋€(gè)對(duì)象 … 這里人這個(gè)對(duì)象,由鞋子、包包、衣服、 褲子、手鏈等對(duì)象組成。 3.每個(gè)對(duì)象都有: a)數(shù)據(jù)(描述對(duì)象的屬性) b)函數(shù)(行為操作代碼

    2023年04月12日
    瀏覽(29)
  • 【C++】繼承基礎(chǔ)知識(shí)及簡(jiǎn)單應(yīng)用,使用reportSingleClassLayout(在Visual Studio開(kāi)發(fā)人員命令提示窗口)查看派生類詳細(xì)信息

    【C++】繼承基礎(chǔ)知識(shí)及簡(jiǎn)單應(yīng)用,使用reportSingleClassLayout(在Visual Studio開(kāi)發(fā)人員命令提示窗口)查看派生類詳細(xì)信息

    author:Carlton tag:C++ topic:【C++】繼承基礎(chǔ)知識(shí)及簡(jiǎn)單應(yīng)用,使用reportSingleClassLayout(在Visual Studio開(kāi)發(fā)人員命令提示窗口)查看派生類詳細(xì)信息 website:黑馬程序員C++ date:2023年7月22日 目錄 概要 繼承規(guī)則 對(duì)象模型 構(gòu)造析構(gòu)順序 同名與靜態(tài)同名成員 多繼承 菱形繼承 VS開(kāi)發(fā)人

    2024年02月16日
    瀏覽(19)
  • Elasticsearch的基礎(chǔ)知識(shí)和架構(gòu)設(shè)計(jì),以及一些常用的功能——面向?qū)ο缶幊毯蛿?shù)據(jù)結(jié)構(gòu)的高級(jí)應(yīng)用場(chǎng)景,以及相應(yīng)的代碼實(shí)現(xiàn)方法和工具

    作者:禪與計(jì)算機(jī)程序設(shè)計(jì)藝術(shù) 2019年,Elasticsearch正式發(fā)布了7.0版本。在這個(gè)版本更新中,新增了許多新特性和功能,包括全文搜索、分類聚合、分析器、圖形化數(shù)據(jù)可視化等。無(wú)論對(duì)于企業(yè)或個(gè)人來(lái)說(shuō),都意味著更好的應(yīng)用場(chǎng)景。但是,掌握Elasticsearch并非易事,需要不斷學(xué)

    2024年02月07日
    瀏覽(17)
  • 【C++系列P3】‘類與對(duì)象‘-三部曲——[基礎(chǔ)知識(shí)](1/3)

    【C++系列P3】‘類與對(duì)象‘-三部曲——[基礎(chǔ)知識(shí)](1/3)

    前言 大家好吖,歡迎來(lái)到 YY 滴 C++系列 ,熱烈歡迎! 【 \\\'類與對(duì)象\\\'-三部曲 】的大綱主要內(nèi)容如下 : 如標(biāo)題所示,本章是【 \\\'類與對(duì)象\\\'-三部曲 】三章中的第 一 章節(jié)—— 基礎(chǔ)知識(shí)章節(jié) ,主要內(nèi)容如下: 目錄 一. This指針 1.編譯器對(duì)This指針的處理本質(zhì)——不允許修改this,但

    2024年02月11日
    瀏覽(18)
  • C++ 面向?qū)ο螅?)——繼承

    C++ 面向?qū)ο螅?)——繼承

    面向?qū)ο蟪绦蛟O(shè)計(jì)中最重要的一個(gè)概念是繼承。繼承允許我們依據(jù)另一個(gè)類來(lái)定義一個(gè)類,這使得創(chuàng)建和維護(hù)一個(gè)應(yīng)用程序變得更容易。這樣做,也達(dá)到了重用代碼功能和提高執(zhí)行效率的效果。 當(dāng)創(chuàng)建一個(gè)類時(shí),您不需要重新編寫新的數(shù)據(jù)成員和成員函數(shù),只需指定新建的類

    2024年02月10日
    瀏覽(23)
  • 【C++面向?qū)ο蟆?. 繼承

    【C++面向?qū)ο蟆?. 繼承

    繼承允許我們依據(jù)一個(gè)類來(lái)定義另一個(gè)類,這使得創(chuàng)建和維護(hù)一個(gè)應(yīng)用程序變得更容易。這樣做,也達(dá)到了 重用代碼功能 和 提高執(zhí)行時(shí)間 的效果。 當(dāng)創(chuàng)建一個(gè)類時(shí),我們不需要重新編寫新的數(shù)據(jù)成員和成員函數(shù),只需指定新建的類繼承了一個(gè)已有的類的成員即可。這個(gè)已

    2024年02月08日
    瀏覽(20)
  • C++:面向?qū)ο蟠罂樱毫庑卫^承

    C++:面向?qū)ο蟠罂樱毫庑卫^承

    單繼承:一個(gè)子類只有 一個(gè)直接父類 時(shí)稱這個(gè)繼承關(guān)系為單繼承。 圖示: 多繼承:一個(gè)子類有 兩個(gè)或以上直接父類 時(shí)稱這個(gè)繼承關(guān)系為多繼承。 圖示: 1.概念 菱形繼承:菱形繼承是多繼承的一種特殊情況。即:一個(gè)類是另外幾個(gè)類的子類,而這幾個(gè)子類又是另外一個(gè)類

    2024年04月27日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包