Skip to content
Novus Examples
cpp924 B

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.

Preview — first 34 linescpp
// 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

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.

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