Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Strong Bad Programming

Strong Bad Programming

Scheduled Pinned Locked Moved The Lounge
tutorial
33 Posts 19 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • realJSOPR realJSOP

    The guyy that wrote this code hasn't worked here for some time - otherwise, I'd offer to stick a fork in his head. :) ------- sig starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "You won't like me when I'm angry..." - Dr. Bruce Banner Please review the Legal Disclaimer in my bio. ------- sig ends

    R Offline
    R Offline
    Rick York
    wrote on last edited by
    #24

    Ah yes, right back in character. ;) PS - I think I have a skin or two of your's on some of my converted cars. :) __________________________________________ a two cent stamp short of going postal.

    realJSOPR 1 Reply Last reply
    0
    • R Rick York

      Ah yes, right back in character. ;) PS - I think I have a skin or two of your's on some of my converted cars. :) __________________________________________ a two cent stamp short of going postal.

      realJSOPR Offline
      realJSOPR Offline
      realJSOP
      wrote on last edited by
      #25

      Converted cars? Converted to what? ------- sig starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "You won't like me when I'm angry..." - Dr. Bruce Banner Please review the Legal Disclaimer in my bio. ------- sig ends

      1 Reply Last reply
      0
      • R Roger Wright

        andy brummer wrote: I did have one developer ask me how to tell if an integer was negative It takes very advanced pschoanalysis skills to determine whether an integer is truly negative, or merely having a bad day. Most programmers never learn these skills, though supremely gifted ones, like yourself, develop an uncanny intuition about coding such tests over time. As a fallback, he can simply square the integer - if the result is positive, there's a 50% chance that it was negative. I've felt much better since I gave up hope.

        C Offline
        C Offline
        cmk
        wrote on last edited by
        #26

        :-D:) thanks for the grin. ...cmk Save the whales - collect the whole set

        1 Reply Last reply
        0
        • realJSOPR realJSOP

          My use of enums has always been to describe unique items (for example - days of the week, or months of the year). I was crusinging through some existing code at work, and found this in a class definition (identifier names changed to protect the innocent): class MyClass : public { public: enum { a=4, b=0, c=4, d=25, e=0, f=0, g=256}; }; I suspect this was done because it was considered a "clever" way to initialize some constants. IMHO, this is a wholly inappropriate use of the enum construct. Just thought I'd vent a little. ------- sig starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "You won't like me when I'm angry..." - Dr. Bruce Banner Please review the Legal Disclaimer in my bio. ------- sig ends

          J Offline
          J Offline
          James Pullicino
          wrote on last edited by
          #27

          In one situation I know of, initializing constants in this way is the only way: template <int n> class a { enum {m_n = n}; }; Now, the value of n is more accessible than it was.

          G 1 Reply Last reply
          0
          • R Ravi Bhavnani

            Gary Wheeler wrote: You could then define auto-increment and auto-decrement operators for the type to give you the sequence. But only if the sequence didn't contain duplicates. /ravi My new year's resolution: 2048 x 1536 Home | Articles | Freeware | Music ravib@ravib.com

            G Offline
            G Offline
            Gary Wheeler
            wrote on last edited by
            #28

            Ravi Bhavnani wrote: But only if the sequence didn't contain duplicates <:~ dangerous_approach_to_talking_about_programming_in_the_Lounge:~ > True. I was simply pointing out to John that assigned enum values had their uses. </:~ dangerous_approach_to_talking_about_programming_in_the_Lounge:~ >


            Software Zen: delete this;

            realJSOPR 1 Reply Last reply
            0
            • G Gary Wheeler

              Ravi Bhavnani wrote: But only if the sequence didn't contain duplicates <:~ dangerous_approach_to_talking_about_programming_in_the_Lounge:~ > True. I was simply pointing out to John that assigned enum values had their uses. </:~ dangerous_approach_to_talking_about_programming_in_the_Lounge:~ >


              Software Zen: delete this;

              realJSOPR Offline
              realJSOPR Offline
              realJSOP
              wrote on last edited by
              #29

              This isn't a programming question - it's a discussion about technique that started as a rant about non-standard use of a construct. I still think it's an unintended use of enum. Granted, it might have an alternative use, but 99 times out of 100, an enum is used to uniquely identify groups of assoicated objects. (Before today, I would have said 100 times out of 100.) ------- sig starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "You won't like me when I'm angry..." - Dr. Bruce Banner Please review the Legal Disclaimer in my bio. ------- sig ends

              G 1 Reply Last reply
              0
              • realJSOPR realJSOP

                This isn't a programming question - it's a discussion about technique that started as a rant about non-standard use of a construct. I still think it's an unintended use of enum. Granted, it might have an alternative use, but 99 times out of 100, an enum is used to uniquely identify groups of assoicated objects. (Before today, I would have said 100 times out of 100.) ------- sig starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "You won't like me when I'm angry..." - Dr. Bruce Banner Please review the Legal Disclaimer in my bio. ------- sig ends

                G Offline
                G Offline
                Gary Wheeler
                wrote on last edited by
                #30

                I agree with your rant. Based on your description, it sounds like enum's were being misused, or at least were being used as part of some sloppy programming. BTW, I wasn't accusing you of posting a programming question; I was alluding to the possibility that my post was treading on dangerous ground. The no_programming_questions_in_the_Lounge death squad has been rather trigger-happy lately. Wait a second. John Simmons accused of posting a programming question in the Lounge? Incommminng! :-D


                Software Zen: delete this;

                realJSOPR 1 Reply Last reply
                0
                • J James Pullicino

                  In one situation I know of, initializing constants in this way is the only way: template <int n> class a { enum {m_n = n}; }; Now, the value of n is more accessible than it was.

                  G Offline
                  G Offline
                  Gabriel 2
                  wrote on last edited by
                  #31

                  Sorry, but Visual C++ 6.0 has problems handling templates with int data type. It's a well known VC6 bug, which is not solved by any service pack. Templates defined this way will only be implemented once, so there's no reason to use it in a programm. For example, if you use your class as shown: template <int n> class a { enum {m_n = n}; }; void main (void) { a<5> a1; a<7> a2; a<9> a3; ... } a1, a2 and a3 will be implemented with the same code, so m_n will have the same value (I don't remember if it was the first or the last appearance) in all cases.

                  1 Reply Last reply
                  0
                  • G Gary Wheeler

                    I agree with your rant. Based on your description, it sounds like enum's were being misused, or at least were being used as part of some sloppy programming. BTW, I wasn't accusing you of posting a programming question; I was alluding to the possibility that my post was treading on dangerous ground. The no_programming_questions_in_the_Lounge death squad has been rather trigger-happy lately. Wait a second. John Simmons accused of posting a programming question in the Lounge? Incommminng! :-D


                    Software Zen: delete this;

                    realJSOPR Offline
                    realJSOPR Offline
                    realJSOP
                    wrote on last edited by
                    #32

                    Derivative posts regarding a programming rant which stray into posting code examples or resulting in a programming question are exempt from the "no programming questions" rule because the question was posed as a result of said rant. You're safe, and if anyone screws with you about it, send them my way. I'll be happy to help them understand. :) ------- sig starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "You won't like me when I'm angry..." - Dr. Bruce Banner Please review the Legal Disclaimer in my bio. ------- sig ends

                    1 Reply Last reply
                    0
                    • A Andy Brummer

                      I was forced to convert some VB6 code written in 2002 where the developer used *LINE NUMBERS*. In fact he started to tell me how much better they make coding, and why VB was great before I could chew my own arm off to escape.
                      Though, I did have one developer ask me how to tell if an integer was negative. Stunned, it took me a while to answer less then zero and they went off pleased whith their new found knowlege. I made it a point to never go near their code ever. My goal is to look at code like a chessmaster looks at a chessboard to see positions and possibilites beyond lines and characters.

                      J Offline
                      J Offline
                      Joe Woodbury
                      wrote on last edited by
                      #33

                      andy brummer wrote: Though, I did have one developer ask me how to tell if an integer was negative. bool IsIntNegative(int val) { char buffer[12]; sprintf(buffer, "%d", val); return buffer[0] == '-'; } Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups