IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Propriété et arguments


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 335
    Par défaut Propriété et arguments
    Bonjour à tous,

    Il s'agit de POO.

    Un pneu a certaines propriété qui sont entré et d'autres qui sont calculé.

    Etant donné que j'ai 4 pneus et qui chacun être different, j'utilise pour les prorpiétés un argument de la classe pneu.
    Selon moi, çà permet que le pneu soit calculé avec ses propres propriétés:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private ReadOnly Property dFz(ByVal tire As TireClass) As Double
            Get
                Return (tire.Fz - tire.Fz0 * LambdaFz0) / (tire.Fz0 * LambdaFz0) 'Normalized Change in vertical load
            End Get
        End Property
    Ici les Lambda font toujours 1.

    Or on m'a dit de supprimer ces arguments ce qui donnerais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private ReadOnly Property dFz As Double
            Get
                Return (Fz - Fz0 * LambdaFz0) / (Fz0 * LambdaFz0) 'Normalized Change in vertical load
            End Get
        End Property
    Dans ce cas, si une fromule emploie Tire_AvantDroit.dFz, le dFz du pneu avant droit sera calculé avec le Fz et Fz0 du même pneu?

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 194
    Par défaut
    oui

  3. #3
    Membre Expert Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Par défaut
    Je suis pas trop d'accord avec ce qu'on t'a dit:
    Or on m'a dit de supprimer ces arguments
    supprimer les arguments n'est pas propre pour une fonction (tout comme mettre ta classe complète)

    je dirais qu'il faut placer en arguments les 3 paramètres:
    • Fz
    • Fz0
    • LambdaFz0 (il est déclaré en public?)

    Pour moi ça ce déclare comme ceci:
    *en partant sur l'idée que Fz, Fz0, LambdaFz0 sont des double*
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private ReadOnly Property dFz(ByVal Fz As Double, ByVal Fz0 As Double, ByVal LambdaFz0_ As Double) As Double
            Get
                Return (Fz - Fz0 * LambdaFz0_) / (Fz0 * LambdaFz0_) 'Normalized Change in vertical load
            End Get
        End Property
    et tu l'appel comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim MonCalcul as Double
     
    MonCalcul = dFz(tire.Fz, tire.Fz0, LambdaFz0)
    PS: ce que je dit n'est pas la forcément vérité vrai

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 194
    Par défaut
    On lui a dit que le lambda vallait toujours 1 donc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private ReadOnly Property dFz As Double
            Get
                Return (this.Fz - this.Fz0 ) / ( this.Fz0 ) 'Normalized Change in vertical load
            End Get
        End Property

    et vu que Fz et Fz0 sont des propriété du Pneu, le Dz aussi (si j'ai bien capté
    mais bon travailler sur des conceptes qu'on ne connait pas ca aide pas)

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 335
    Par défaut
    Citation Envoyé par hunteshiva Voir le message
    Je suis pas trop d'accord avec ce qu'on t'a dit:

    supprimer les arguments n'est pas propre pour une fonction (tout comme mettre ta classe complète)

    je dirais qu'il faut placer en arguments les 3 paramètres:
    • Fz
    • Fz0
    • LambdaFz0 (il est déclaré en public?)

    Pour moi ça ce déclare comme ceci:
    *en partant sur l'idée que Fz, Fz0, LambdaFz0 sont des double*
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private ReadOnly Property dFz(ByVal Fz As Double, ByVal Fz0 As Double, ByVal LambdaFz0_ As Double) As Double
            Get
                Return (Fz - Fz0 * LambdaFz0_) / (Fz0 * LambdaFz0_) 'Normalized Change in vertical load
            End Get
        End Property
    et tu l'appel comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim MonCalcul as Double
     
    MonCalcul = dFz(tire.Fz, tire.Fz0, LambdaFz0)
    PS: ce que je dit n'est pas la forcément vérité vrai
    Ce n'est pas une fonction mais une propriété, et les arguments que tu utilises dans ta réponse sont également des propriétés.

    En fait j'utilise un argument de la classe pour identifier les autres propriétés du calcul, qu'elle soit du même pneu.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 194
    Par défaut
    Une propiété n'a pas d'argument

  7. #7
    Membre Expert Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Par défaut
    Ok autant pour moi,
    je ne dev pas trop de fonctions comma ça
    *mais ça m'interesse dc je reste au vue de ton post *

  8. #8
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 194
    Par défaut
    Le VB c'est tabou on en viendra tous à bout

    Apprendre la POO sur VB

Discussions similaires

  1. Réponses: 4
    Dernier message: 09/03/2014, 09h38
  2. Réponses: 2
    Dernier message: 21/01/2014, 15h01
  3. Réponses: 2
    Dernier message: 18/08/2013, 12h22
  4. Réponses: 3
    Dernier message: 04/12/2012, 21h56
  5. Transmettre une propriété en argument
    Par programaniac dans le forum Langage
    Réponses: 11
    Dernier message: 25/10/2005, 12h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo