• fxomt@lemm.ee
    link
    fedilink
    English
    arrow-up
    37
    ·
    edit-2
    1 day ago
    #include <vector>
    #include <algorithm>
    
    int main() {
        int a;
        std::vector<std::vector<int>> v;
        std::vector<std::vector<int>>::const_iterator it = std::find(v.begin(), v.end(), a);
    }
    

    assaults you with 42 errors, C++ templates are a joy 😊

      • Traister101@lemmy.today
        link
        fedilink
        arrow-up
        14
        ·
        1 day ago

        Uninitalized memory (int a; with no assignment) vector of int vectors (IE a dynamic int[][]) and attempting to find a, an int in the vector of vectors of int IE int instead of vector<int>. I think the iterator type is correct but I’m not sure off the top of my head

  • Static_Rocket@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    24 hours ago

    I find it commendable that you wrote code so horrible other libraries started throwing more errors wondering what the hell you were doing.

  • letsgo@lemm.ee
    link
    fedilink
    English
    arrow-up
    19
    ·
    1 day ago

    Well don’t write 600 lines of code without hitting compile then! You’re not writing an essay that has to be handed in once.

    The only time I ever “write” more than a few 10s of lines at a time (dev since the 1970s, pro since 1991) is when I’m scaffolding a new application with a code generator, and that usually compiles first time. And source control is revolutionary. Check in stuff that works, then no matter how bad things get you can always just roll back to the last good commit. Unpicking the last few hours without source control is horrible. Been there, done that way too many times.

    And even when you do get 700 errors just look at the first few. The rest are most likely junk caused by the compiler not being able to resynchronise with the remainder of the code.

    • mehdi_benadel@lemmy.balamb.fr
      link
      fedilink
      arrow-up
      4
      ·
      1 day ago

      I once did a project regex search heavy refactor, clicked compile once and made it without a code error. I had several collegues be amazed when I compile and it works on the first shot 😅

    • skuzz@discuss.tchncs.de
      link
      fedilink
      arrow-up
      2
      ·
      1 day ago

      Also, if you develop on a Mac, slow disk sync on their modern OSes not picking up the change. Or if you use Docker, it caching a layer that it shouldn’t. The future has weird new problems sometimes.

  • nous@programming.dev
    link
    fedilink
    English
    arrow-up
    13
    ·
    1 day ago

    Protip: Don’t write 600 lines of code without ever testing it at all. And by testing I mean anything, manual testing included or even just compiling it or running a linter over it. Do things incrementally and verify things at each step to make sure you are not drifting off course by some faulty assumption you made near the start.