summaryrefslogtreecommitdiff
path: root/Help/guide/tutorial/Step2/MathFunctions/MathFunctions.cxx
diff options
context:
space:
mode:
authorMarkus Ferrell <markus.ferrell@kitware.com>2023-02-10 16:07:06 -0500
committerMarkus Ferrell <markus.ferrell@kitware.com>2023-02-23 09:42:10 -0500
commit8ddf32196c6bca9c3a80414222327eebd5d51835 (patch)
tree40ad09ab3e93b4d1bbc642fc921f1ddb3737853b /Help/guide/tutorial/Step2/MathFunctions/MathFunctions.cxx
parent78299083d24fc09c777292effb4fdb9d9ed1d7d3 (diff)
downloadcmake-8ddf32196c6bca9c3a80414222327eebd5d51835.tar.gz
Tutorial: Refactor MathFunctions code
Propagate the refactor in Step 10 MathFunctions through all of the steps. Use MathFunctions/MathFunctions.cxx instead of Tutorial.cxx to determine which sqrt library is called. Adds .h files which correspond to their .cxx files by name.
Diffstat (limited to 'Help/guide/tutorial/Step2/MathFunctions/MathFunctions.cxx')
-rw-r--r--Help/guide/tutorial/Step2/MathFunctions/MathFunctions.cxx15
1 files changed, 15 insertions, 0 deletions
diff --git a/Help/guide/tutorial/Step2/MathFunctions/MathFunctions.cxx b/Help/guide/tutorial/Step2/MathFunctions/MathFunctions.cxx
new file mode 100644
index 0000000000..781d0ecc4e
--- /dev/null
+++ b/Help/guide/tutorial/Step2/MathFunctions/MathFunctions.cxx
@@ -0,0 +1,15 @@
+#include "MathFunctions.h"
+
+// TODO 11: include cmath
+
+// TODO 10: Wrap the mysqrt include in a precompiled ifdef based on USE_MYMATH
+#include "mysqrt.h"
+
+namespace mathfunctions {
+double sqrt(double x)
+{
+ // TODO 9: If USE_MYMATH is defined, use detail::mysqrt.
+ // Otherwise, use std::sqrt.
+ return detail::mysqrt(x);
+}
+}