Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Challenge: Logging and Rethrowing | Advanced Exception Handling
C++ Exception Handling

bookChallenge: Logging and Rethrowing

In many real-world applications, you may need to log information about exceptions before allowing them to propagate further up the call stack. This helps with debugging and monitoring, while still allowing higher-level code to make decisions about how to handle the error. Your challenge is to write a function that catches an exception, logs a specific message, and then rethrows the same exception so that it can be handled elsewhere.

Tâche

Swipe to start coding

Write a function named logAndRethrow that takes a callable object (such as a lambda or function) as its parameter. The function should execute the callable inside a try block. If any exception is thrown, your function should catch it, print the message Exception caught and logged, and then rethrow the same exception. Do not modify or suppress the original exception; ensure it can still be caught by code outside of logAndRethrow.

Solution

solution.cpp

solution.cpp

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 2
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

close

Awesome!

Completion rate improved to 6.67

bookChallenge: Logging and Rethrowing

Glissez pour afficher le menu

In many real-world applications, you may need to log information about exceptions before allowing them to propagate further up the call stack. This helps with debugging and monitoring, while still allowing higher-level code to make decisions about how to handle the error. Your challenge is to write a function that catches an exception, logs a specific message, and then rethrows the same exception so that it can be handled elsewhere.

Tâche

Swipe to start coding

Write a function named logAndRethrow that takes a callable object (such as a lambda or function) as its parameter. The function should execute the callable inside a try block. If any exception is thrown, your function should catch it, print the message Exception caught and logged, and then rethrow the same exception. Do not modify or suppress the original exception; ensure it can still be caught by code outside of logAndRethrow.

Solution

solution.cpp

solution.cpp

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 2
single

single

some-alt