Il seguente è un estratto dal libro di Bjarne Stroustrup, il C++ linguaggio di programmazione:Come limitare l'impatto delle funzionalità linguistiche dipendenti dall'implementazione in C++?
Sezione 4.6:
Alcuni degli aspetti di tipi fondamentali C++ s ', come ad esempio la dimensione di un int, sono specifica di esecuzione definito (§C.2). Sottolineo queste dipendenze e spesso raccomando di evitarle o di prendere provvedimenti per minimizzare il loro impatto. Perché dovresti preoccuparti? Le persone che programmano su una varietà di sistemi o utilizzano una varietà di compilatori si preoccupano molto perché se non lo fanno, sono costretti a perdere tempo a trovare e correggere bug oscuri. Le persone che affermano di non preoccuparsi della portabilità di solito lo fanno perché usano solo un singolo sistema e sentono di potersi permettere l'atteggiamento secondo cui "il linguaggio è ciò che il mio compilatore implementa". Questa è una visione ristretta e miope. Se il tuo programma ha successo, è probabile che venga eseguito il porting, quindi qualcuno dovrà trovare e risolvere problemi relativi alle funzionalità dipendenti dall'implementazione. Inoltre, i programmi spesso devono essere compilati con altri compilatori per lo stesso sistema, e anche una futura versione del tuo compilatore preferito potrebbe fare alcune cose in modo diverso da quello attuale. È molto più facile conoscere e limitare l'impatto delle dipendenze di implementazione quando viene scritto un programma piuttosto che tentare di sbrogliare il caos in un secondo momento.
È relativamente facile limitare l'impatto delle funzionalità linguistiche dipendenti dall'implementazione.
La mia domanda è: come limitare l'impatto delle funzionalità linguistiche dipendenti dall'implementazione? Per favore, menziona le funzionalità linguistiche dipendenti dall'implementazione, quindi mostra come limitare il loro impatto.
Bella risposta. Più roba di quanto ne fossi a conoscenza :) – workmad3