Salut tout le monde

Je me demande quelle est la différence entre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Function a() as DataTable
a = New DataTable 'Est-on obligé ici de faire New ?
End Function
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Function a() as DataTable
 Dim b as New DataTable
a = b
'ou bien
Return b
End Function
De plus, est-ce qu'il y a une différence entre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Dim a as New DataTable
Dim a as DataTable = New DataTable
Aussi je me demande si c'est cohérent ou une mauvaise pratique de programmation de faire quelque chose du genre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Dim pencil As New Pen(New SolidBrush(mFocusRectColor))
je veux dire déclarer à l'intérieur même de l'appel de la fonction un type SolidBrush, au lieu de l'avoir déclaré avant et puis ensuite passer en paramètre, outre bien sûr la lisibilité du code, quoique ici je trouve cela plus visible on n'a pas à chercher la variable ou elle est déclaré, puisque elle est sur place.

Merci pour vos conseils