Je viens de trouver le code suivant dans Qt et je suis un peu confus de ce qui se passe ici. Surtout pour ce que reinterpret_cast(0) fait? template inline T qobject_cast(const QObject *object) { // this will cause a compilation error if T is not const register T ptr = static_cast(object); Q_UNUSED(ptr); #if !defined(QT_NO_MEMBER_TEMPLATES) && […]
Duplication possible: Membres virtuels statiques C ++? Peut-on avoir une méthode statique virtuelle (en C ++)? J’ai essayé de comstackr le code suivant: #include using namespace std; class A { public: virtual static void f() {cout << "A's static method" << endl;} }; class B :public A { public: static void f() {cout << "B's […]
Disons que j’ai du code Java: public class SomeClass { static { private final double PI = 3.14; private final double SOME_CONSTANT = 5.76; private final double SOME_OTHER_CONSTANT = 756.33; } //rest of class } Si un thread instancie une instance de SomeClass et est en train d’initialiser les valeurs du bloc statique lorsqu’un deuxième […]
J’ai récemment rencontré un problème où il me semble que j’ai besoin d’une méthode «statique abstraite». Je sais pourquoi c’est impossible, mais comment puis-je contourner cette limitation? Par exemple, j’ai une classe abstraite qui a une chaîne de description. Comme cette chaîne est commune à toutes les instances, elle est marquée comme statique, mais je […]
En Java, j’utilise parfois des variables de classe pour atsortingbuer un identifiant unique à chaque nouvelle instance. Je fais quelque chose comme public class Foo { private static long nextId = 0; public final long id; public Foo() { id = nextId; nextId++; } […] } Comment puis-je faire cela à Scala?
Je voudrais accéder à l’object de session sans le passer à ma fonction d’assistance statique. C’est pour que je puisse enregistrer et charger les objects de l’object de session automatiquement avec un minimum de peluches supplémentaires. Est-il possible / comment puis-je accéder à l’object de session depuis une méthode statique dans une classe statique?
Disons que je veux convertir A* en char* et inversement, nous avons deux choix (je veux dire, beaucoup d’entre nous pensent que nous avons deux choix, parce que les deux semblent fonctionner! D’où la confusion!): struct A { int age; char name[128]; }; A a; char *buffer = static_cast(static_cast(&a)); //choice 1 char *buffer = reinterpret_cast(&a); […]
Je travaille avec un code qui utilise largement l’idiome de renvoyer un pointeur sur une variable locale statique. par exemple: char* const GetSsortingng() { static char sTest[5]; strcpy(sTest, “Test”); return sTest; } Ai-je raison de penser que c’est sûr? PS, je sais que ce serait une meilleure façon de faire la même chose: char* const […]
Le code suivant imprime null une fois. class MyClass { private static MyClass myClass = new MyClass(); private static final Object obj = new Object(); public MyClass() { System.out.println(obj); } public static void main(Ssortingng[] args) {} } Pourquoi les objects statiques ne sont-ils pas initialisés avant l’exécution du constructeur? Mettre à jour Je viens de […]
Je viens de découvrir en Java que vous pouvez déclarer un champ ‘static transient’ – le compilateur ne se plaint pas. Cela ne semble pas être utile car les champs statiques ne sont pas sérialisés, comme nous le soaps tous. Mais je me demande, existe-t-il réellement un cas où les champs «transitoires statiques» sont utiles?