J’ai lu beaucoup de tutoriels sur la classe C ++ mais ils manquent quelque chose que d’autres tutoriels incluent. Quelqu’un peut-il s’il vous plaît me montrer comment écrire et utiliser une classe C ++ très simple qui utilise la visibilité, les méthodes et un constructeur et un destructeur simples?
Je veux vous demander vos meilleures pratiques concernant les constructeurs en C ++. Je ne suis pas tout à fait sûr de ce que je devrais faire dans un constructeur. Dois-je l’utiliser uniquement pour les initialisations d’atsortingbuts, en appelant les constructeurs parents, etc.? Ou peut-être même y mettre des fonctions plus complexes, comme lire et […]
Supposons qu’il existe une classe de base A et une classe B dérivée de A On sait alors que le constructeur de la classe A n’est jamais hérité par la classe B Toutefois, lorsqu’un nouvel object de B est créé, le constructeur par défaut de la classe A est appelé avant que le constructeur par […]
Avoir le code: struct B { int* a; B(int value):a(new int(value)) { } B():a(nullptr){} B(const B&); } B::B(const B& pattern) { } Je me trompe en msg: ‘Erreur 1 Erreur C2533:’ B :: {ctor} ‘: les constructeurs ne permettent pas un type de retour’ Une idée pourquoi? PS j’utilise VS 2010RC
Après avoir lu cet article, j’ai fait remarquer int () donne 0 car le int temporaire est une valeur initialisée et non parce que int() appelle le constructeur par défaut pour int . (L’article est défectueux selon ma compréhension.) J’ai aussi dit que les types primitifs (intégrés) n’ont pas de constructeurs. L’auteur original m’a demandé […]
Que se passe-t-il si j’écris une déclaration de retour dans le constructeur? Est-ce conforme à la norme? struct A { A() { return; } }; Le code ci-dessus comstack bien, sans aucune erreur à ideone . Mais le code suivant ne fonctionne pas: struct A { A() { return 100; } }; Il donne cette […]
Je remarque l’erreur du compilateur Le type ‘…’ n’a pas de constructeur défini généré lorsque j’essaye par erreur d’instancier une classe particlar. Cela m’a amené à me demander comment je pourrais écrire mon propre cours qui précipiterait ce message quand quelqu’un tenterait de l’instancier. Donc, le code ci-dessous, que dois-je faire pour MyClass ? namespace […]
J’ai le code: class A { public: A() = default; private: int i = 1; }; int main() { const A a; return 0; } Il comstack bien sur g ++ (voir ideone ), mais échoue sur clang ++ avec une erreur: l’initialisation par défaut d’un object de type const ‘const A’ nécessite un constructeur […]
Je suis développeur Java. Dans une interview, on m’a posé une question sur les constructeurs privés: Pouvez-vous accéder à un constructeur privé d’une classe et l’instancier? J’ai répondu «non» mais c’était faux. Pouvez-vous expliquer pourquoi je me suis trompé et donner un exemple d’instanciation d’un object avec un constructeur privé?
J’essaie d’utiliser un constructeur statique comme celui-ci: public static DataManager() { LastInfoID = 1; } et obtenir cette erreur: les modificateurs d’access ne sont pas autorisés sur les constructeurs statiques Je voudrais savoir quel est mon problème.