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. == vs =

== vs =

Scheduled Pinned Locked Moved The Lounge
c++visual-studiohelp
46 Posts 23 Posters 1 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.
  • J Jorgen Sigvardsson

    But "if 2 is greater than 1" sounds natural, why doesn't the example above? :~

    R Offline
    R Offline
    Ryan Binns
    wrote on last edited by
    #41

    Jörgen Sigvardsson wrote:

    But "if 2 is greater than 1" sounds natural, why doesn't the example above?

    Because 'i' is not a literal constant - it's an unknown abstract object that you're comparing against a known reference. In the "if 2 is greater than 1" example, both items in the comparison are known constants, so it makes no difference which way around you put them.

    Ryan

    "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"

    1 Reply Last reply
    0
    • J Jorgen Sigvardsson

      Gary R. Wheeler wrote:

      He avoids braces '{}'

      That's fine with me, but

      if (x == 2 || x == 6 && y > 5) for (int i = -1; i < 10; ++i)
      InvokeMethod(i,x,y); else InvokeMethod2(x);

      that's just sick! That one just begs for misinterpretation!

      G Offline
      G Offline
      Gary R Wheeler
      wrote on last edited by
      #42

      His position is that unnecessary braces and parentheses make it take longer to read his code, because you have to pause to locate the matching brace. He's not big on indentation, either. With his 'object-oriented' madness, his functions rarely include more than one if, for, or while construct. Fortunately for me, his stuff is in a separate part of the product that I don't have to debug into. I debug up to his interface, and then pass issues to him if necessary.


      Software Zen: delete this;

      Fold With Us![^]

      1 Reply Last reply
      0
      • J Jorgen Sigvardsson

        Yes, many times. Especially in tricky code generated SQL queries. :)

        V Offline
        V Offline
        Vikram A Punathambekar
        wrote on last edited by
        #43

        I don't know if you're kidding or not. :~ Why would you want to compare, say, 11 and 42? Cheers, Vikram.


        "When I read in books about a "base class", I figured this was the class that was at the bottom of the inheritence tree. It's the "base", right? Like the base of a pyramid." - Marc Clifton.

        J 1 Reply Last reply
        0
        • V Vikram A Punathambekar

          I don't know if you're kidding or not. :~ Why would you want to compare, say, 11 and 42? Cheers, Vikram.


          "When I read in books about a "base class", I figured this was the class that was at the bottom of the inheritence tree. It's the "base", right? Like the base of a pyramid." - Marc Clifton.

          J Offline
          J Offline
          Jorgen Sigvardsson
          wrote on last edited by
          #44

          If you do SQL queries from environments in which the support for it is rather bad, it is often easier to generate tautologies or contradictions, than it is to generate a whole different subexpression. It also allows for simpler query building code (less branches, etc). I've also seen it being used in clever joins, but I couldn't for my life recite how it helped in the join. (I honestly don't remember the queries, other than I noted the clever use of tautologies and contradictions :)) I've seen other uses for it as well, but I'm unsure why such logical tricks have been used. Could've been because of shortcomings in the SQL language. I generally shy away from SQL, because it really isn't my cup of tea (i.e., it's bloody boring!)

          1 Reply Last reply
          0
          • C code frog 0

            Troposphere wrote:

            I just spent an hour and a half debugging a problem in C++ that was caused by using the '=' instead of the '=='

            I love you! Apparently there are at least 2 mortals who come to this site on a regular basis. Stuff like that burns my butt when I catch myself at it.

            I only read CP for the articles. Code-frog System Architects, Inc.

            L Offline
            L Offline
            Lost User
            wrote on last edited by
            #45

            Cool, I'm immortal :laugh: The tigress is here :-D

            1 Reply Last reply
            0
            • J Jim Crafton

              Don't feel too bad. A few companies ago, I was working on my code, and it kept crashing. The company was a startup, so we were under the gun, naturally, with an impossible deadline to meet. Needless to say, I'm banging my head against the wall trying to find what I did wrong, and not getting anywhere. Fast forward 3 hours later, it's 2:30 AM and I'm in the debugger, deep in the code of one of the other guy's in the company (the lead app coder/engineer/wank/whatever) code, that integrates with mine. Turns out he had written:

              if ( id == id ) {
              //do some stuff
              }
              else {
              //do some other REALLY, REALLY important stuff
              //that should have been flagged in his own testing,
              //if the retard had ever bothered to do so in the
              //first place!!!!
              }

              So 2:30 AM, I can't actually fix the problem, but I have now wasted ALL my evening and productivity chasing down someone elses lazy coding (I say lazy because the nature of this particular logic error meant that his code NEVER worked right in the first place). Man was I pissed. This same guy, let's call him "Biff", drove so many of the other developers nuts, created so many software problems, that a few months later, we all got together and talked to the CTO. We basically said, either he goes or we all go. So the CTO makes an announcement the following day: Biff was offically promoted to Project Lead. :(( :(( :(( ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF!

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

              Jim Crafton wrote:

              we all got together and talked to the CTO. We basically said, either he goes or we all go. So the CTO makes an announcement the following day

              Just had the exact opposite happen to me. After poking holes in their idiocy, including refusing to say a three to four year project would take a year, my fellow "teammates" made an ultimatim. It's a relief to get out, but.... 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