# std::subtract_with_carry_engine<UIntType,w,s,r>::subtract_with_carry_engine

From cppreference.com

< cpp | numeric | random | subtract with carry engine

subtract_with_carry_engine() : subtract_with_carry_engine(default_seed) {} |
(1) | (since C++11) |

explicit subtract_with_carry_engine( result_type value ); |
(2) | (since C++11) |

template< class Sseq > explicit subtract_with_carry_engine( Sseq& s ); |
(3) | (since C++11) |

subtract_with_carry_engine( const subtract_with_carry_engine& ); |
(4) | (since C++11) (implicitly declared) |

Constructs the pseudo-random number engine.

1) Default constructor. Seeds the engine with

`default_seed`

.
This section is incomplete |

The overload (3) only participates in overload resolution if `Sseq`

qualifies as a SeedSequence. In particular, it is excluded from the set of candidate functions if `Sseq`

is convertible to `result_type`

.

### Parameters

value | - | seed value to use in the initialization of the internal state |

s | - | seed sequence to use in the initialization of the internal state |

### Complexity

This section is incomplete |

### Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|

P0935R0 | C++11 | default constructor was explicit | made implicit |

### See also

sets the current state of the engine (public member function) |