[#BloombergLP-bslmt-ThroughputBenchmarkResult-2constructor-08]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::xref:BloombergLP/bslmt/ThroughputBenchmarkResult.adoc[ThroughputBenchmarkResult]::ThroughputBenchmarkResult
:relfileprefix: ../../../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;bslmt&lowbar;throughputbenchmarkresult&period;h&gt;`

Create a `ThroughputBenchmarkResult` object having the same value and the same allocator as the specified `original` object&period; The value of `original` becomes unspecified but valid, and its allocator remains unchanged&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-07.adoc[ThroughputBenchmarkResult](xref:BloombergLP/bslmf/MovableRef.adoc[bslmf::MovableRef&lt;ThroughputBenchmarkResult&gt;] original) noexcept;
----

[.small]#xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-07.adoc[_» more&period;&period;&period;_]#

Create an empty `ThroughputBenchmarkResult` object&period; Optionally specify a `basicAllocator` used to supply memory&period; If `basicAllocator` is 0, the currently installed default allocator is used&period; Note that this object has to be initialized before it can be used&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-03.adoc[ThroughputBenchmarkResult](xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-03.adoc[_» more&period;&period;&period;_]#

Create a `ThroughputBenchmarkResult` object having the same value as the specified `original` object, using the specified `basicAllocator` to supply memory&period; If `basicAllocator` is 0, the currently installed default allocator is used&period; The allocator of `original` remains unchanged&period; If `original` and the newly created object have the same allocator then the value of `original` becomes unspecified but valid, and no exceptions will be thrown&semi; otherwise `original` is unchanged (and an exception may be thrown)&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-0a.adoc[ThroughputBenchmarkResult](
    xref:BloombergLP/bslmf/MovableRef.adoc[bslmf::MovableRef&lt;ThroughputBenchmarkResult&gt;] original,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator);
----

[.small]#xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-0a.adoc[_» more&period;&period;&period;_]#

Create a `ThroughputBenchmarkResult` object having the value of the specified `original`&period; Optionally specify a `basicAllocator` used to supply memory&period; If `basicAllocator` is 0, the currently installed default allocator is used&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-0e.adoc[ThroughputBenchmarkResult](
    xref:BloombergLP/bslmt/ThroughputBenchmarkResult.adoc[ThroughputBenchmarkResult] const& original,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-0e.adoc[_» more&period;&period;&period;_]#

Create a `ThroughputBenchmarkResult` object with the specified `numSamples` the number of samples in the benchmark, and the specified `threadGroupSizes`, the number of threads in each of the thread groups&period; Optionally specify a `basicAllocator` used to supply memory&period; If `basicAllocator` is 0, the currently installed default allocator is used&period; The behavior is undefined unless `0 &lt; numSamples`, `0 &lt; threadGroupSizes&period;size()`, and `0 &lt; threadGroupSizes&lsqb;N&rsqb;` for all valid `N`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-0d.adoc[ThroughputBenchmarkResult](
    int numSamples,
    xref:bsl/vector-00d.adoc[bsl::vector&lt;int&gt;] const& threadGroupSizes,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bslmt/ThroughputBenchmarkResult/2constructor-0d.adoc[_» more&period;&period;&period;_]#


[.small]#Created with https://www.mrdocs.com[MrDocs]#
