The interface for functions in the dune-functions module
Publikation: Beitrag in Fachzeitschrift › Forschungsartikel › Beigetragen › Begutachtung
Beitragende
Abstract
The dune-functions Dune module introduces a new programmer interface for discrete and non-discrete functions. Unlike the previous interfaces considered in the existing Dune modules, it is based on overloading operator(), and returning values by-value. This makes user code much more readable, and allows the incorporation of newer C++ features such as lambda expressions. Run-time polymorphism is implemented not by inheritance, but by type erasure, generalizing the ideas of the std::function class from the C++11 standard library. We describe the new interface, show its possibilities, and measure the performance impact of type erasure and return-by-value.
Details
| Originalsprache | Englisch |
|---|---|
| Seiten (von - bis) | 95-109 |
| Fachzeitschrift | Archive of Numerical Software |
| Jahrgang | 5 |
| Ausgabenummer | 1 |
| Publikationsstatus | Veröffentlicht - 2017 |
| Peer-Review-Status | Ja |
Externe IDs
| ArXiv | 1512.06136 |
|---|---|
| ORCID | /0000-0003-1093-6374/work/142250560 |
Schlagworte
Schlagwörter
- dune-functions, functions, interface