דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. התנהגות טפשית של מהדר vb6

התנהגות טפשית של מהדר vb6

מתוזמן נעוץ נעול הועבר ארכיון code613m
3 פוסטים 3 כותבים 277 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א מנותק
    א מנותק
    ארכיטקט
    כתב ב נערך לאחרונה על ידי
    #1

    כשעושים תנאי עם or הוא קורא את ה or למרות שכבר בארגומנט הראשון יש תשובה חיובית.

    מישהו יודע למה הוא מתנהג ככה?? והאם יש דרך לעקוף את זה, והאם גם ב selectcase זה עובד ככה?? זה חשוב לי עכשיו כי זה גורם לי לטיפול מיותר בשגיאות (התנאי הוא כזה שאם האפשרות הראשונה היא נכונה, אז האפשרות השניה באמת מחזירה שגיאה, ורק אם האפשרות הראשונה לא נכונה אזי יש צורך בקריאת האפשרות השניה שבהכרח איננה שגיאה).

    אגב יש לי חידוש לאנשים שעוד לא יודעים יכולת ב vb6 שלא קיימת בדוט נט שימוש ב selectcase כתנאי if לכל דבר הנה:

    Select Case True
    case mystr = "hllow"
    
    case mynumber * yournumber > 100
    
    end select
    

    זה חסך לי המון המון קוד בזמנו, ודוקא בדוט נט ראיתי שהורידו את האפשרות הזאת....

    פורסם במקור בפורום CODE613 ב16/01/2014 18:09 (+02:00)

    אידיאולוגיות גדולות נכנסות למטחנה של עולם המעשה ויוצאות ממנו בפירורים (ווינסטון צ'רצ'יל, סתם סתם, זה שלי)

    תגובה 1 תגובה אחרונה
    0
    • רחמיםר מנותק
      רחמיםר מנותק
      רחמים מורחק
      כתב ב נערך לאחרונה על ידי
      #2

      בשביל זה יש דוטנט orElse אבל ב VB6 אין מצב [וזה די מוזר למה ב VB6 זה לא קיים כאשר ב C++ כבר מזמן מזמן יש את || שעובד כמו orElse ואת && שעובד כמו AndAlso], אגב יש גם את And ו AndAlso שהאחרון נתמך רק בדוטנט וחוסך המון בדיקת שגיאות.
      מה שביטלו בדוטנט שהיה בVB6 זה בגלל שהכל צריך להיות מומר בסופו של דבר ל IL לכן VBNET התרחקה בהרבה דברים מ VB6 לכיון C#

      לגבי הקוד שהבאת קימפלתי אותו בדוטנט ולא קיבלתי שום שגיאות.

      פורסם במקור בפורום CODE613 ב16/01/2014 18:14 (+02:00)

      תגובה 1 תגובה אחרונה
      1
      • dovidD מנותק
        dovidD מנותק
        dovid ניהול
        כתב ב נערך לאחרונה על ידי
        #3

        Select Case אכן עושה את העבודה, הוא לא בודק לאחר תנאי שהתקיים (במקרה של AND צריך להפוך את ההתנייה כדי שזה יהיה OR).

        בVB.NET ממשיך הסינטק של הSelect Case גם כתנאי וגם כבדיקת ערך מרובה.
        בC# זה הSwitch והוא שונה מאוד: הוא לא יכול לבדוק תנאים, הוא גולש משורה לשורה עד לBreak.

        טיפ: בVB וגם בVBA אפשר לכתוב ככה:

        Dim i As Integer
        
        Select Case i
            Case 5 To 8
        
            Case Is > 12
        
            Case Else
        
        End Select
        

        פורסם במקור בפורום CODE613 ב17/01/2014 12:36 (+02:00)

        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

        בכל נושא אפשר ליצור קשר dovid@tchumim.com

        תגובה 1 תגובה אחרונה
        1

        בא תתחבר לדף היומי!
        • התחברות

        • אין לך חשבון עדיין? הרשמה

        • התחברו או הירשמו כדי לחפש.
        • פוסט ראשון
          פוסט אחרון
        0
        • דף הבית
        • קטגוריות
        • פוסטים אחרונים
        • משתמשים
        • חיפוש
        • חוקי הפורום