Aan de slagBegin gratis

Eenvoudige C++-expressies met evalCpp

In tegenstelling tot R heb je in C++ geen console om iteraties van je code uit te proberen.

Om rustig in C++ te stappen, biedt Rcpp de functie evalCpp() aan. Die neemt een eenvoudige C++-expressie als string, compileert die tot een echte C++-functie en roept die functie aan.

Dit wordt vaak gebruikt om te controleren of een machine correct is geconfigureerd om met Rcpp te werken.

Deze oefening maakt deel uit van de cursus

R-code optimaliseren met Rcpp

Bekijk cursus

Oefeninstructies

  • Laad het pakket Rcpp.
  • Evalueer 2 + 2 als een C++-expressie met evalCpp() en ook als een R-expressie.
  • Wat zijn de opslagmodi van x en y?
  • Pas de C++-expressie 2 + 2 zo aan dat die een double teruggeeft en ken die toe aan z.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# Load Rcpp
___

# Evaluate 2 + 2 in C++
x <- evalCpp(___)

# Evaluate 2 + 2 in R
y <- ___

# Storage modes of x and y
___
___

# Change the C++ expression so that it returns a double
z <- evalCpp("2 + 2")
Code bewerken en uitvoeren