2012-03-26 2 views
0

Je veux obtenir deux valeurs de sortie dans une fonction n'est pas possible? J'utilise simplement le type de données String et partage les valeurs. mais ont un autre moyen facile d'obtenir deux valeurs de sortie ...Comment obtenir 2 valeurs de retour dans une fonction

En fait, je veux vérifier un dossier combien de fichiers jpg sont horizontal et vertical si

Public Function HVChecking() as string 
    Dim HCount%, VCount% 
    '' 
    '' 
    '' 
    '' 
Return HCount.ToString & "|" & VCount.ToString 
End Function 

enfin je partage les valeurs avec " | " caractère ...

avoir d'autres options pour obtenir deux valeurs séparées en une seule fonction.

Je n'ai aucune idée de Dictionary, HashTable ... Lequel est le meilleur pour ça?

+0

Habituellement, pour obtenir une fonction pour retourner 2 valeurs, il est accompli en retournant un tableau: '[value1, value2]'. Je pense que c'est la façon la plus courante de le faire dans la plupart des langues. – Zheileman

+0

ou en retournant une structure – Chris

+0

ya ya ya eu ..... Structure omg je l'ai oublié un ........ ThnQ Chris, Zheileman, Mustafa ........ –

Répondre

1

Je pense que vous pouvez envoyer deux paramètres ByRef à la fonction. Je veux dire,

Public Sub HVChecking(ByRef HCount as Integer, ByRef VCount as Integer) 

Et vous pouvez appeler la fonction comme

Dim HCount%, VCount% 
HVChecking(HCount, Vcount) 
0

Il existe plusieurs types de données qui existent dans le cadre d'encapsuler deux entiers, Point sources immedaitely à l'esprit.

Si vous souhaitez ajouter du contexte, vous pouvez créer votre propre Class or Structure. En dernier recours, ou si vous n'avez pas le temps de taper 4 lignes, vous pouvez utiliser ByRef paramètres. Ceux-ci peuvent donner de bonnes performances mais, ils sont l'approche héritée pour good reason.

Questions connexes