C++ — Series (class template, STL)
A realistic C++ snippet with a class template, STL algorithms (max_element, accumulate), std::move, and range handling — for testing highlighters, g++/clang++, and parsers against real templates.
// Temperature statistics: a class template, the STL algorithms,
// and range-based iteration.
#include <algorithm>
#include <iostream>
#include <numeric>
#include <vector>
template <typename T>
class Series {
public:
explicit Series(std::vector<T> values) : values_(std::move(values)) {}
T max() const { return *std::max_element(values_.begin(), values_.end()); }
double mean() const {
if (values_.empty()) return 0.0;
T total = std::accumulate(values_.begin(), values_.end(), T{});
return static_cast<double>(total) / values_.size();
}
std::size_t size() const { return values_.size(); }
private:
std::vector<T> values_;
};
int main() {
Series<double> temps({19.5, 21.0, 23.75, 18.25, 22.5});
std::cout << "readings: " << temps.size() << "\n";
std::cout << "max: " << temps.max() << "\n";
std::cout << "mean: " << temps.mean() << "\n";
return 0;
}
Specifications
- Language
- C++
- Kind
- realistic snippet
- Lines
- 33
- Encoding
- UTF-8
- Line Endings
- LF
Testing contract
Expected to pass- Scenario
- Compile the file and run it, then confirm the class template instantiates for a second numeric type.
- Expected result
- It prints `readings: 5`, `max: 23.75` and `mean: 21`, exercising `std::max_element`, `std::accumulate`, `std::move` in the constructor, and a `Series<T>` template that instantiates for any type supporting addition and division.
What is a .cpp file?
C++ (.cpp) is a plain-text source file for the C++ programming language — a statically typed, compiled language that extends C with classes, templates, operator overloading, the Standard Template Library, and RAII. It is used for high-performance applications, game engines, and systems software.
How to use this file
Use an example .cpp file to test syntax highlighters, C++ compilers (g++, clang++), static analysers and formatters, and parser or language-detection tooling against real language constructs.
How to use this file for testing
“C++ — Series (class template, STL)” is a deterministic Novus Examples fixture for Syntax highlighting, Code parsing, Editor testing. Idiomatic hello-world programs and realistic snippets across sixteen languages, exercising comments, string escapes, interpolation, numeric literals, and language keywords — for testing syntax highlighters, editor themes, and tree-sitter grammars.
Documented properties for this file: C++ · UTF-8 · LF. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
This is a short, known-correct source file. Run it through your syntax highlighter, linter, formatter, tree-sitter grammar, or parser, and open it in the in-browser editor to tweak and re-download. Each snippet exercises comments, string escapes, literals, and language keywords.
Code examples
c++ -std=c++20 temperature.cpp -o prog && ./progRelated files
- cppC++ — Hello WorldThe classic hello-world in C++ — iostream and std::cout — for testing highlighters, C++ compilers, and parsers.

- cppC++ OptionalC++17 optional SAMPLE for clangd fixtures.

- cC — Hello WorldThe classic hello-world in C — an include, main, and printf — for testing highlighters, C compilers, and parsers against the canonical first program.

- cC — Linked list (structs, malloc, pointers)A realistic C program: a singly linked list with a typedef struct, malloc/free memory management, pointer walking, and error handling — for testing highlighters, compilers, and static analysers.

- cC StructC struct SAMPLE for clangd / highlighter fixtures.

- csC# FibonacciA small C# iterator Fibonacci utility — realistic snippet for language tooling.

Generated by generation/code_samples.py. Free for any use, no attribution required — license.