---
name: "std::ratio"
section: "3"
platform: "linux"
package: "gcc"
version: "16.2.1+r23+gd564253eb6c8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/std::ratio"
---

# std::ratio(3)

Provides compile-time rational arithmetic.

## NAME

std::ratio\< \_Num, \_Den \> - Provides compile-time rational arithmetic.

## SYNOPSIS

\#include \<ratio\>

### Public Types

typedef **ratio**\< num, den \> **type**\

### Static Public Attributes

static constexpr intmax\_t **den**\
 static constexpr intmax\_t **num**\

## Detailed Description

### template\<intmax\_t \_Num, intmax\_t \_Den = 1\>

struct std::ratio\< \_Num, \_Den \>"Provides compile-time rational arithmetic.

This class template represents any finite rational number with a numerator and denominator representable by compile-time constants of type intmax\_t. The ratio is simplified when instantiated.

For example:

```
std::ratio<7,-21>::num == -1;
std::ratio<7,-21>::den == 3;
```

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
