Esistono alcuni schemi per verificare se a un metodo è stato assegnato un valore null . Innanzitutto, quello classico. È comune nel codice auto-fatto e ovvio da capire. public void method1(String arg) { if (arg == null) { throw new NullPointerException(“arg”); } } In secondo luogo, è ansible utilizzare un framework esistente. Quel codice sembra […]
Esiste uno standard, di fatto o di altro tipo, per i documenti XML? Ad esempio qual è il modo “migliore” per scrivere un tag? Allo stesso modo se ho un valore enumerato per un attributo che è migliore
Ho sentito il consiglio che dovresti evitare di provare a catturare blocchi se ansible poiché sono costosi. La mia domanda riguarda specificamente la piattaforma .NET: perché i blocchi di prova sono costosi? Riepilogo delle risposte: Ci sono chiaramente due campi su questo tema: quelli che dicono che i blocchi di prova sono costosi e quelli […]
Per quanto posso vedere ci sono 3 modi per usare i booleani in c con il tipo bool, da allora usando true e false definendo usando il preprocessore #define FALSE 0 … #define TRUE !(FALSE) Solo per usare le costanti direttamente, ie 1 e 0 ci sono altri metodi che ho perso? Quali sono i […]
Questa potrebbe essere una questione di stile, ma c‘è un po ‘di divisione nella nostra squadra di sviluppo e mi sono chiesto se qualcun altro avesse qualche idea in merito … Fondamentalmente, abbiamo alcune istruzioni di debug print che disattiviamo durante lo sviluppo normale. Personalmente preferisco fare quanto segue: //—- SomeSourceFile.cpp —- #define DEBUG_ENABLED (0) […]
In molti programmi un #define lo stesso scopo di una costante. Per esempio. #define FIELD_WIDTH 10 const int fieldWidth = 10; Di solito vedo il primo modulo preferito rispetto all’altro, facendo affidamento sul pre-processore per gestire ciò che è fondamentalmente una decisione applicativa. C’è una ragione per questa tradizione?
Nello spirito di domande come testare i tuoi anelli in alto o in basso? : Quale stile usi per un ciclo infinito e perché? while (true) {} do {} while (true); per (;;) {} etichetta: … etichetta goto;
Ho visto questo codice: if (cond) { perror(“an error occurred”), exit(1); } Perché dovresti farlo? Perché non solo: if (cond) { perror(“an error occurred”); exit(1); }
Il nostro strumento di analisi statica si lamenta di un “qualificatore di tipo inutile sul tipo restituito” quando abbiamo prototipi nei file di intestazione come: const int foo(); L’abbiamo definito in questo modo perché la funzione restituisce una costante che non cambierà mai, pensando che l’API fosse più chiara con const sul posto. Mi sembra […]
Senza dubbio, è essenziale per la comprensione del codice dare un prefisso alle variabili membro in modo che possano essere facilmente distinte dalle variabili “normali”. Ma che tipo di prefisso usi? Ho lavorato su progetti in cui abbiamo usato m_ come prefisso, su altri progetti abbiamo usato solo un trattino basso (che personalmente non mi […]