Addio robot - ciao marasma - pagina 9

 
C-4:
Queste persone sono strane. Queste teste d'uovo combattono il compilatore come un mulino a vento senza capire la cosa principale: il compilatore è tuo alleato! Rallegratevi quando il compilatore giura sui frammenti di codice potenzialmente non sicuri. Rallegratevi anche se l'applicazione si blocca subito dopo il lancio con una stringa di errore. Ma Dio non voglia che si ottenga un codice ingestibile quando non ci sono errori o avvertimenti e il programma sembra funzionare bene ma di tanto in tanto si verificano strani glitch la cui causa non può essere rintracciata da nessuna parte. In questi momenti si diventa vaporosi e si comincia a sognare errori come "puntatore non valido" o "divisione per zero".

Si scopre che un compilatore non è la stessa cosa di un compilatore. Qui, il compilatore C/C++ di Intel è un alleato. Se volete delle osservazioni, siete i benvenuti. Se non ne volete, nessun problema. Se volete disabilitare alcuni commenti, basta nominarli.

Ma ci sono altri compilatori. Alcuni sono "come vuoi tu".

È opportuno rallegrarsi quando il compilatore è un alleato, quando "ascolta". E anche quando riesce a non creare codice ingestibile. Allora i pensieri di questi sogni bizzarri non ti passeranno nemmeno per la testa.

 
Andrei01:

Di nuovo, i programmatori professionisti di solito non guardano gli avvertimenti perché conoscono la logica del compilatore e i compilatori sono inutili per testare la funzionalità del codice.

I programmatori professionisti attivano il livello massimo di avviso e tutti gli avvisi (NON i commenti, solo gli avvisi) e si assicurano che il codice venga compilato senza un solo avviso. Alcuni particolarmente zelanti attivano anche una modalità speciale in cui un avvertimento viene trattato dal compilatore come un errore e il codice semplicemente non viene compilato se c'è anche un solo avvertimento.
 

Capisco che alcune persone diventino isteriche dopo aver fatto conoscenza con gli analizzatori statici.

Ma solo dopo che alcuni hanno capito cosa deve (esattamente deve) fare un compilatore. Siamo nel 2014 e i compilatori ordinari sono almeno 10 anni indietro nel controllo di qualità e si concentrano solo sulle ottimizzazioni.

Per informazione: il compilatore Intel C++ non si è ancora ripreso dai suoi difetti - genera costantemente errori interni del compilatore sui nostri progetti. Cioè, non mastica grandi progetti e produce i propri errori. E anche i miti sulle sue straordinarie proprietà di ottimizzazione sono superati - tutti gli altri hanno stretto molto i loro livelli di ottimizzazione.

In un linguaggio così pericoloso e suicida come il C++, vengono dati così tanti tasti e interruttori di compilazione che i programmatori fiduciosi possono compilare tonnellate di codice antico e copiato dal nulla senza crampi nervosi :)

 
Andrei01:

...

Di nuovo, i programmatori professionisti di solito non guardano gli avvisi...

Negli annali!!!
 
C-4:
Negli annali!!!
Puoi dire qualcosa sul merito del caso senza fare il pagliaccio?
 
Renat:
Potete consigliarmi un ambiente, un compilatore e delle impostazioni per una scrittura ottimale (velocità/ottimizzazione + rilevamento degli errori, ecc.) di C++ e altri linguaggi?
 
bxa29869:
Potete consigliarmi un ambiente, un compilatore e delle impostazioni per una scrittura ottimale (velocità/ottimizzazione + rilevamento degli errori, ecc.) di C++ e altri linguaggi?
Visual Studio come?
 
_new-rena:
Visual Studio come?

L'ho provato, va bene. Ma non ho niente con cui confrontarlo. Vorrei programmare su un'infrastruttura ottimale.

I miei programmi sono piccoli, raramente il codice sorgente supera i cento kilobyte. Vorrei una raccomandazione per queste versioni amatoriali. Non sto parlando di grandi progetti.

 
bxa29869:
Potete raccomandare ambiente, compilatore e impostazioni per una scrittura ottimale (velocità/ottimizzazione + rilevamento degli errori, ecc.) dei programmi in C++ e altri linguaggi?

Raccomandato per lo sviluppo professionale:

  • Visual Studio 2012 e successivi
  • Il controllo gratuito CPP è un must
  • PVS Studio (completamente pagato, si può ottenere una versione economica di CPP Cat) - fortemente raccomandato se stiamo parlando di sviluppo professionale
  • PC Lint (a pagamento ma economico, buono per le esecuzioni automatiche, veloce, richiede un add-in o una gui come VisualLint)
  • C++ Memory Validator (c'è un intero pacchetto di programmi, è a pagamento, non è costoso, molto buono per l'ottimizzazione delle risorse e la ricerca di errori)
  • Intel Parallel Studio (costoso, lento, buggy come compilatore, inutile sul mercato di massa, buono per le librerie matematiche, buono per il deep tuning, non mi piace molto)
 
Grazie! Si scopre allo stesso tempo che il normale compilatore di Visual Studio può essere lasciato invariato.
Motivazione: