Felmeddelanden
Dina C++-funktioner kan innehålla anrop till funktionen stop() för att skicka ett undantag. Vi har delvis definierat funktionen add_positive_numbers() åt dig. Komplettera funktionen så att den skickar undantag.
Den här övningen är en del av kursen
Optimera R-kod med Rcpp
Övningsinstruktioner
- Om
xär negativt ska ett undantag skickas med meddelandet: "x is negative". - Om
yär negativt ska ett undantag skickas med meddelandet: "y is negative".
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
cppFunction('
// adds x and y, but only if they are positive
int add_positive_numbers(int x, int y) {
// if x is negative, stop
if(___) stop("x is negative") ;
// if y is negative, stop
if(___) ___("y is negative") ;
return x + y ;
}
')
# Call the function with positive numbers
add_positive_numbers(2, 3)
# Call the function with a negative number
add_positive_numbers(-2, 3)