Di volta in volta devi lavorare con codice che non è sicuro come vorresti che fosse. O quello è qualcun altro codice, o qualcosa che hai scritto alle 3 di 5 anni fa, ma succede.
E in quei casi sarebbe bello rendere quel codice un po 'più sicuro e più incline agli errori di battitura.
Allo stesso tempo, vuoi evitare test approfonditi, e se il codice non è coperto da test unitari, beh, siamo onesti, anche se lo fosse, non puoi essere sicuro di non rompere nulla quando facendo la maggior parte delle cose di refactoring.
Quindi, quello che mi chiedo è, quale sarebbe una lista per il codice C / C ++ che può essere automatizzato per quasi "trovare / sostituire tutto" che renderebbe il codice più sicuro, senza avere il rischio elevato di modificare il comportamento dei programmi .
Poche cose mi sono venute in mente:
- Rendi const tutte le funzioni membro
- Crea tutti gli argomenti per le funzioni collegate internamente const
- Rimuovi tutti i cast di stile C e sostituiscili con gli stili C ++ sugli errori
- Trasforma la maggior parte delle macro in funzioni o modelli inline
- modifica l'enumerazione delle enumerazioni digitate
Ma la maggior parte di loro avrebbe bisogno di una ricompilazione e verifiche manuali. Hai altri candidati e forse anche più sicuri?