Accueil Finances personnelles C ++ Concept de classe abstrait - dummies

C ++ Concept de classe abstrait - dummies

Vidéo: Virtual Functions & Abstract Classes in C++ | C++ Programming Tutorials 2025

Vidéo: Virtual Functions & Abstract Classes in C++ | C++ Programming Tutorials 2025
Anonim

Une classe abstraite en C ++ est une classe avec une ou plusieurs fonctions virtuelles pures. Une fonction virtuelle pure est une fonction membre virtuelle marquée comme n'ayant aucune implémentation. Très probablement, il n'a pas d'implémentation car aucune implémentation n'est possible avec les informations fournies dans la classe, y compris les classes de base.

Une fonction virtuelle non pure conventionnelle et banale est appelée fonction concrète (notez qu'une fonction concrète peut être virtuelle - malheureusement, C ++ utilise ce terme pour désigner polymorphique.

La syntaxe pour déclarer une fonction pure virtual est démontrée dans la classe suivante: Account

// Account - cette classe est une classe de classe abstraite Account {public: Compte (non signé accNo, double initialBalance = 0. 0); // fonctions d'accès unsigned int compteNo (); double acntBalance (); static int noAccounts (); // fonctions de transaction void deposit (double montant); // les éléments suivants est une fonction virtuelle pure retrait de vide virtuel (double montant) = 0; protected: // garde les comptes dans une liste chaînée donc il n'y a pas de limite // au nombre de comptes static int count; // nombre de comptes unsigned accountNumber;;};

Le = 0 après la déclaration de retrait () indique que le programmeur n'a pas l'intention de définir cette fonction. on est un espace réservé pour les sous-classes. Les sous-classes de Account devraient remplacer cette fonction par une fonction concrète. Le programmeur doit fournir une implémentation pour chaque fonction membre non déclarée virtuelle pure.

Certains programmeurs pensent que cette notation est stupide. Mais il est là pour rester, alors il faut juste apprendre à vivre avec. Il y a une raison, sinon une justification, pour cette notation. Chaque fonction virtuelle doit avoir une entrée dans une table spéciale.

Cette entrée contient l'adresse de la fonction. Vraisemblablement, au moins à un moment, l'entrée pour une fonction virtuelle pure était 0. Dans tous les cas, c'est la syntaxe avec laquelle vous êtes coincé maintenant.

Une classe abstraite ne peut pas être instanciée avec un objet; c'est-à-dire que vous ne pouvez pas faire un objet hors d'une classe abstraite. Par exemple, la déclaration suivante n'est pas légale:

void fn () {// déclare un compte avec 100 dollars Account acnt (1234, 100. 00); // ce n'est pas légal acnt. retrait (50); // qu'attendriez-vous} // cet appel à faire?

Si la déclaration était autorisée, l'objet résultant serait incomplet et manquerait de certaines capacités. Par exemple, que devrait faire l'appel précédent? Rappelez-vous, il n'y a pas de compte:: retrait () .

Les classes abstraites servent de classes de base pour les autres classes. Un compte contient toutes les propriétés associées à un compte bancaire générique. Vous pouvez créer d'autres types de comptes bancaires en héritant du compte .

Le terme technique est instancier . Vous dites que la classe Account ne peut pas être instanciée avec un objet ou qu'un objet donné instancie la classe Savings .

C ++ Concept de classe abstrait - dummies

Le choix des éditeurs

Les bons outils pour la photographie macro - les nuls

Les bons outils pour la photographie macro - les nuls

Vous avez de nombreuses options pour l'équipement pour capturer des gros plans macro photographies. Vous avez peut-être déjà une caméra qui prend de superbes photos en gros plan. Macro photographie signifie créer une image dans laquelle le sujet est représenté sur le capteur numérique (ou plan de film) dans sa taille réelle. Si vous trouvez que les limites de votre ...

Conseils pour prendre bon point et déclenchez Photographies - mannequins

Conseils pour prendre bon point et déclenchez Photographies - mannequins

La photographie est sur la capture et la conservation images, et en tant que photographe, vous voulez prendre les meilleures photos que vous pouvez. Si vous utilisez un appareil photo compact, utilisez ces astuces simples pour améliorer vos photos: Verrouillez toujours la mise au point avant de prendre une photo. Cadre, ne viser pas. Utilisez le viseur ou sur l'écran tout affichage pour composer ...

Le trépied droit pour la photographie en macro et en gros plan - les nuls

Le trépied droit pour la photographie en macro et en gros plan - les nuls

Pour photographier certains sujets de près et en essayant d'atteindre certains résultats, le trépied que vous utilisez peut déterminer si vous réussissez ou échouez. Savoir ce qui est disponible sur le marché et les différences entre les trépieds peut être très utile et vous aide à décider quels trépieds vous conviennent le mieux. Lors de la sélection d'un trépied, accordez une attention particulière à ...

Le choix des éditeurs

Comment entendre la voix de Dieu pendant la prière chrétienne - par tys

Comment entendre la voix de Dieu pendant la prière chrétienne - par tys

La prière chrétienne est une façon de parler à Dieu. Cependant, pour tirer pleinement parti de la prière chrétienne, vous ne pouvez pas simplement parler, vous devez aussi vous préparer à écouter. Les conseils suivants peuvent vous aider à entendre ce que Dieu vous dit: Obtenez le scoop sur ce que Dieu vous dira par ...

Comparant les croyances à travers l'église chrétienne - les mannequins

Comparant les croyances à travers l'église chrétienne - les mannequins

Différentes confessions chrétiennes sont organisées et adorent de différentes façons. Cette liste pratique vous aidera à suivre et à comparer certaines différences dans le culte, les rituels et les croyances des plus grands groupes de l'Église chrétienne. Moyens de salut anglicans / épiscopaux: la grâce de Dieu par la foi seule. Comment ils adorent: le style traditionnel par la liturgie; liturgie contemporaine ...

Conversation avec Dieu - mannequins

Conversation avec Dieu - mannequins

La prière consiste simplement à communiquer avec Dieu. Il n'y a rien de magique à propos de la prière chrétienne; c'est une question de fait. Cependant, la prière chrétienne est plus que simplement dire à Dieu votre liste de demandes et s'attendre à ce qu'il réponde à vos prières comme s'il était un distributeur automatique cosmique. Oui, la prière est un moyen de partager avec Dieu ...

Le choix des éditeurs

Loi visant à accroître Uplifting émotions - mannequins

Loi visant à accroître Uplifting émotions - mannequins

Afin d'élever vos émotions, la première étape est de prendre conscience de ce qui émotions que vous avez. Prenez conscience de ce qui vous déclenche - ce qui vous met en colère et vous met en colère et ce qui vous rend très excité. Un déclencheur surveille certaines émissions de télévision et permet aux émotions de ces programmes de s'infiltrer ...

Comment les entreprises vous convainquent d'acheter leurs produits - mannequins

Comment les entreprises vous convainquent d'acheter leurs produits - mannequins

Presque tous les médias commerciaux destinés aux femmes reçoivent leur publicité les revenus des secteurs de l'alimentation, de la beauté, de l'alimentation et de la mode. Juste l'industrie de régime elle-même est une entreprise commerciale de 33 milliards de dollars par an. Et, bien sûr, ces industries ont continuellement besoin de clients pour continuer à réussir. C'est dans leur meilleur intérêt de ...

Comment l'image corporelle se forme dans votre jeunesse - les nuls

Comment l'image corporelle se forme dans votre jeunesse - les nuls

En général, ce que vous avez vécu avec votre famille grandissaient ont eu un effet direct sur les pensées et les sentiments que vous aviez à propos de votre corps. Repensez à vos jeunes années. Dans quelle mesure les énoncés suivants décrivent votre famille? Personne n'a exercé. La voiture était utilisée même pour de courts trajets. De la nourriture lourde et engraissante ...