| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Netværk  
  • Ethernet
  • FTP & Telnet
  • IP-adresse
  • Internet Netværk
  • lokale netværk
  • modemer
  • Network Security
  • Andet Computer Networking
  • Routere
  • virtuelle netværk
  • Voice Over IP
  • Trådløst netværk
  • trådløse Routere
  •  
    Computer Viden >> Netværk >> virtuelle netværk >> Content
    Hvad er virtuel arv?
    Virtuel arv er en C++-mekanisme til at skabe en basisklasse, der sikkert kan nedarves fra flere gange uden at forårsage problemer med objektudskæring eller runtime-fejl.

    Overvej følgende eksempel:

    ```c++

    // Basisklasse

    klasse dyr {

    offentlig:

    streng navn;

    };

    // Afledt klasse 1

    klasse Hund:offentligt dyr {

    offentlig:

    string race;

    };

    // Afledt klasse 2

    klasse kat:offentligt dyr {

    offentlig:

    streng farve;

    };

    // Afledt klasse 3 (arver fra både hund og kat)

    klasse kæledyr:offentlig hund, offentlig kat {

    offentlig:

    //...

    };

    ```

    Uden virtuel nedarvning ville `Pet`-klassen arve to kopier af `Animal`-basisklassen, hvilket kunne føre til runtime-fejl eller objektslicing (hvor kun en del af `Pet`-objektet er konstrueret). For at forhindre dette kan vi bruge virtuel arv ved at angive nøgleordet "virtuel" i basisklasseerklæringen:

    ```c++

    // Basisklasse med virtuel arv

    klasse dyr {

    offentlig:

    streng navn;

    };

    ```

    Ved at bruge virtuel arv, vil `Pet`-klassen kun arve én kopi af `Animal`-basisklassen, hvilket sikrer korrekt adfærd og forhindrer runtime-fejl.

    Fordele:

    1. Løsning af tvetydighed: Hjælper med at løse tvetydighed, når flere basisklasser har den samme medlemsfunktion eller datamedlem.

    2. Reduceret hukommelsesomkostninger: Undgår udskæring af objekter, reducerer hukommelsesomkostninger og forbedrer ydeevnen.

    3. Fleksibilitet: Giver mulighed for komplekse nedarvningshierarkier, hvor afledte klasser kan arve fra flere basisklasser.

    Hvornår skal virtuel arv bruges:

    - Når du har flere arv og ønsker at undgå tvetydige basiselementer eller objektudskæring.

    - Når du vil dele fælles funktionalitet på tværs af flere afledte klasser uden at duplikere kode.

    Forrige :

    næste :
      Relaterede artikler
    ·Sådan oprettes forbindelse til en Terminal Server ved …
    ·Er cachehukommelse lig med virtuel hukommelse? 
    ·Hvordan finder man en VPN Password 
    ·Trin-for- trin guide til Opsætning Remote Access VPN 
    ·Hvad er nogle applikationer, der kan drage fordel af, a…
    ·Hvad er fordelene ved Satellite VPN internetadgang 
    ·VPN viser, at denne computer ikke kan oprette forbindel…
    ·Sådan Tilslut en BlackBerry til VPN 
    ·Hvad er fuld form for vdu? 
    ·Sådan konfigureres WiFi Router til VPN-forbindelse 
      Anbefalede Artikler
    ·Sådan konfigureres Mocha VNC 
    ·Sådan får Stuff fra din pc til din bærbare computer 
    ·Sådan Setup User Adgang til Cisco routere 
    ·Hvordan man kan skjule din musikafspiller på Profile 2…
    ·Sådan Set Up et hjemmenetværk med Windows 2000 Pro 
    ·Sådan ændres Google som min startside 
    ·Hvordan stopper du gentagne chikaneopkald fra 490-990-1…
    ·Sådan foretages fejlfinding en Linksys EFSP42 
    ·Hvordan du giver tilladelse på et computernetværk 
    ·Sådan bruges en WEP-nøgle til Wireless Router 
    Copyright © Computer Viden https://www.computerdk.com