Dato che i parametri out e ref hanno lievi connotazioni diverse, scrivere codice come sotto può essere considerato un bug (anche se al momento non causa problemi) o solo una mancanza di comprensione sui parametri ref e out?
public void MyMethod()
{
int myInt = 0;
MyMethodWithRef(ref myInt);
}
public void MyMethodWithRef(ref myInt)
{
// not used before being assigned a value. Does an out parameter make more sense then
myInt = 5;
}
Capisco che questo sia l'uso scorretto di ref ma se lo vedessi costantemente in codice o anche solo una volta lo considererai un bug e quindi lo aggiusterai e informerà il coder originale o lo farai semplicemente come parte del refactoring generale pratiche?