mirror of
https://github.com/Kitware/CMake.git
synced 2026-08-03 22:30:29 +00:00
Tutorial: Rewrite using conventions enabled by CMake 3.23
This is a full re-write of the CMake Tutorial for CMake 3.23, both the functionality it provides, as well as the modern workflows that developers use when interfacing with CMake. Issue: #22663, #23086, #23799, #26053, #26105, #26153, #26914
This commit is contained in:
committed by
Brad King
parent
9e89400d13
commit
b2e3e3e30e
36
Help/guide/tutorial/Step4/Tutorial/Tutorial.cxx
Normal file
36
Help/guide/tutorial/Step4/Tutorial/Tutorial.cxx
Normal file
@@ -0,0 +1,36 @@
|
||||
// A simple program that computes the square root of a number
|
||||
#include <format>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
#include <MathFunctions.h>
|
||||
|
||||
#ifdef TUTORIAL_USE_VENDORLIB
|
||||
# include <Vendor.h>
|
||||
#endif
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
if (argc < 2) {
|
||||
std::cout << std::format("Usage: {} number\n", argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
int unused;
|
||||
|
||||
// convert input to double
|
||||
double const inputValue = std::stod(argv[1]);
|
||||
|
||||
// calculate square root
|
||||
double const outputValue = mathfunctions::sqrt(inputValue);
|
||||
std::cout << std::format("The square root of {} is {}\n", inputValue,
|
||||
outputValue);
|
||||
|
||||
#ifdef TUTORIAL_USE_VENDORLIB
|
||||
if (CheckSqrt(inputValue, outputValue)) {
|
||||
std::cout << "Sqrt verified by vendor\n";
|
||||
} else {
|
||||
std::cout << "Sqrt rejected by vendor\n";
|
||||
}
|
||||
#endif
|
||||
}
|
||||
Reference in New Issue
Block a user