Jednoduché výrazy v C++ pomocí evalCpp
Na rozdíl od R nemáš v C++ k dispozici konzoli, kde bys mohl/a průběžně zkoušet různé verze kódu.
Aby byl přechod do C++ co nejplynulejší, nabízí Rcpp funkci evalCpp(), která vezme jednoduchý výraz v C++ jako řetězec, zkompiluje ho do plnohodnotné C++ funkce a zavolá ji.
Tato funkce se často používá k ověření, že je stroj správně nakonfigurován pro práci s Rcpp.
Toto cvičení je součástí kurzu
Optimizing R Code with Rcpp
Pokyny k cvičení
- Načti balíček
Rcpp. - Vyhodnoť výraz
2 + 2jako výraz v C++ pomocíevalCpp()a zároveň jako výraz v R. - Jaké jsou typy úložiště proměnných
xay? - Uprav výraz v C++
2 + 2tak, aby vrátil hodnotu typudouble, a výsledek přiřaď doz.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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")