1. Swift / Говнокод #26738

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    struct Ololo: Comparable {
        let value: Int
        
        static func < (lhs: Ololo, rhs: Ololo) -> Bool {
            return lhs.value < rhs.value
        }
        
        static func < (lhs: Ololo, rhs: Ololo) -> String {
            if lhs.value < rhs.value {
                return "LESS"
            } else if lhs.value > rhs.value {
                return "MORE"
            } else {
                return "EQUAL"
            }
        }
    }
    
    let ololo1 = Ololo(value: 100)
    let ololo2 = Ololo(value: 200)
    
    let bool: Bool = ololo1 < ololo2
    let string: String = ololo1 < ololo2

    А в плюсах можно в operator> любую херь вернуть © jojaxon

    Наверное, я поторопился, когда сказал, что крестобляди будет в свифте тесно.

    Запостил: Desktop, 06 Июня 2020

    Комментарии (11) RSS

    • #c++eo
      Ответить
    • Перегрузка по типу возвращаемого значеня?
      Ответить
    • по скользкой дорожке в свифте пошли. разведут потом c++'ism
      Ответить
      • Тут ещё и свои операторы добавлять можно. Совсем как у больших ребят.
        Ответить
        • В «Я» тоже:

          '%=()=%' = function(a, b) "* g o a t s e x * g o a t s e x * g o a t s e x *\ng                                               g  \no /     \\             \\            /    \\       o\na|       |             \\          |      |      a\nt|       `.             |         |       :     t\ns`        |             |        \\|       |     s\ne \\       | /       /  \\\\   --__ \\       :    e\nx  \\      \\/   _--~~          ~--__| \\     |    x  \n*   \\      \\_-~                    ~-_\\    |    *\ng    \\_     \\        _.--------.______\\|   |    g\no      \\     \\______// _ ___ _ (_(__>  \\   |    o\na       \\   .  C ___)  ______ (_(____>  |  /    a\nt       /\\ |   C ____)/      \\ (_____>  |_/     t\ns      / /\\|   C_____)       |  (___>   /  \\    s\ne     |   (   _C_____)\\______/  // _/ /     \\   e\nx     |    \\  |__   \\_________// (__/       |  x\n*    | \\    \\____)   `----   --'             |  *\ng    |  \\_          ___\\       /_          _/ | g\no   |              /    |     |  \\            | o\na   |             |    /       \\  \\           | a\nt   |          / /    |         |  \\           |t\ns   |         / /      \\__/\\___/    |          |s\ne  |           /        |    |       |         |e\nx  |          |         |    |       |         |x\n* g o a t s e x * g o a t s e x * g o a t s e x *"
          
          
          cat("stertor" %=()=% "goat")
          Ответить
          • Вывод программы:
            * g o a t s e x * g o a t s e x * g o a t s e x *
            g                                               g  
            o /     \             \            /    \       o
            a|       |             \          |      |      a
            t|       `.             |         |       :     t
            s`        |             |        \|       |     s
            e \       | /       /  \\   --__ \       :    e
            x  \      \/   _--~~          ~--__| \     |    x  
            *   \      \_-~                    ~-_\    |    *
            g    \_     \        _.--------.______\|   |    g
            o      \     \______// _ ___ _ (_(__>  \   |    o
            a       \   .  C ___)  ______ (_(____>  |  /    a
            t       /\ |   C ____)/      \ (_____>  |_/     t
            s      / /\|   C_____)       |  (___>   /  \    s
            e     |   (   _C_____)\______/  // _/ /     \   e
            x     |    \  |__   \_________// (__/       |  x
            *    | \    \____)   `----   --'             |  *
            g    |  \_          ___\       /_          _/ | g
            o   |              /    |     |  \            | o
            a   |             |    /       \  \           | a
            t   |          / /    |         |  \           |t
            s   |         / /      \__/\___/    |          |s
            e  |           /        |    |       |         |e
            x  |          |         |    |       |         |x
            * g o a t s e x * g o a t s e x * g o a t s e x *
            Ответить

    Добавить комментарий