Qu’est-ce que l’opérateur deux-points (“:”) fait dans ce constructeur? Est-ce équivalent à MyClass(m_classID = -1, m_userdata = 0); ? class MyClass { public: MyClass() : m_classID(-1), m_userdata(0) { } int m_classID; void *m_userdata; };
public class A { private static final int x; public A() { x = 5; } } final signifie que la variable ne peut être affectée qu’une seule fois (dans le constructeur). static signifie que c’est une instance de classe. Je ne vois pas pourquoi c’est interdit. Où ces mots-clés interfèrent-ils les uns avec les […]
Nous pouvons mettre du code dans un constructeur ou une méthode ou un bloc d’initialisation. Quelle est l’utilisation du bloc d’initialisation? Est-il nécessaire que chaque programme Java le possède?
Aujourd’hui, j’ai découvert une chose plutôt intéressante à propos de g++ ou nm … les définitions de constructeur semblent avoir deux entrées dans les bibliothèques. J’ai un en-tête thing.hpp : class Thing { Thing(); Thing(int x); void foo(); }; Et thing.cpp : #include “thing.hpp” Thing::Thing() { } Thing::Thing(int x) { } void Thing::foo() { } […]
Si je veux que la fonction x se produise chaque fois qu’un composant se charge, que ce soit la première fois, je navigue vers un autre site et navigue en arrière ou c’est la cinquième fois que le composant est chargé. Que dois-je mettre en fonction x? Le constructeur de composants ou OnInit?
Quelle est la différence entre un constructeur par défaut et l’initialisation directe des champs d’un object directement? Quelles sont les raisons de préférer l’un des exemples suivants à l’autre? Exemple 1 public class Foo { private int x = 5; private Ssortingng[] y = new Ssortingng[10]; } Exemple 2 public class Foo { private int […]
En C ++, Outre l’allocation dynamic de la mémoire, existe-t-il une différence fonctionnelle entre les deux lignes de code suivantes: Time t (12, 0, 0); //t is a Time object Time* t = new Time(12, 0, 0);//t is a pointer to a dynamically allocated Time object Je suppose bien sûr qu’un temps (int, int, int) […]
Ryan Delucchi a demandé ici dans le commentaire # 3 à la réponse de Tom Hawtin : pourquoi est Class.newInstance () “mal”? ceci en réponse à l’exemple de code: // Avoid Class.newInstance, for it is evil. Constructor ctor = runClass.getConstructor(); Runnable doRun = ctor.newInstance(); alors, pourquoi est-ce le mal?
Est-il préférable d’initialiser les variables membres de classe sur la déclaration private List _things = new List(); private int _arb = 99; ou dans le constructeur par défaut? private List _things; private int _arb; public TheClass() { _things = new List(); _arb = 99; } Est-ce simplement une question de style ou y a-t-il des […]
Dans Scala 2.8, existe-t-il un moyen de surcharger les constructeurs d’une classe de cas? Si oui, veuillez mettre un extrait pour expliquer, sinon, veuillez expliquer pourquoi?