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. General Programming
  3. C / C++ / MFC
  4. why was exception not handle?

why was exception not handle?

Scheduled Pinned Locked Moved C / C++ / MFC
question
2 Posts 2 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.
  • D Offline
    D Offline
    derek7
    wrote on last edited by
    #1

    #include class ccc { public: ccc(int i) { m_i = i; } int m_i; }; void f(bool b) throw( ccc ) { if(b) { throw new ccc(5); } } main() { try { f(1); } catch (ccc) { std::cout<<"catch call"; abort(); } } the catch not run;

    S 1 Reply Last reply
    0
    • D derek7

      #include class ccc { public: ccc(int i) { m_i = i; } int m_i; }; void f(bool b) throw( ccc ) { if(b) { throw new ccc(5); } } main() { try { f(1); } catch (ccc) { std::cout<<"catch call"; abort(); } } the catch not run;

      S Offline
      S Offline
      Stephen Hewitt
      wrote on last edited by
      #2

      Because your not catching what you throw:

      throw new ccc(5); // Here you throw a ccc*
       
      catch (ccc) // But here you catch a ccc
      

      To fix:

      // Throw like this:
      throw ccc(5);
       
      // Or catch like this:
      catch (ccc* pC)
      {
           delete pC;
           std::cout<<"catch call";
           abort();
      }
      

      Steve

      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