[#bsl-variant_size-07]
= xref:bsl.adoc[bsl]::variant&lowbar;size
:relfileprefix: ../
:mrdocs:

This metafunction calculates the number of alternatives in the (possibly cv&hyphen;qualified) `bsl&colon;&colon;variant` type of (template parameter) `t&lowbar;BSL&lowbar;VARIANT`&period; The primary template is not defined&period;

== Synopsis

Declared in `&lt;bslstl&lowbar;variant&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class t&lowbar;BSL&lowbar;VARIANT&gt;
struct variant&lowbar;size;
----

== Specializations

[cols="1"]
|===
| Name
| xref:bsl/variant_size-05.adoc[`variant&lowbar;size&lt;t&lowbar;BSL&lowbar;VARIANT volatile&gt;`] 
| xref:bsl/variant_size-02.adoc[`variant&lowbar;size&lt;t&lowbar;BSL&lowbar;VARIANT const&gt;`] 
| xref:bsl/variant_size-0d.adoc[`variant&lowbar;size&lt;t&lowbar;BSL&lowbar;VARIANT const volatile&gt;`] 
| xref:bsl/variant_size-09.adoc[`variant&lowbar;size&lt;variant&lt;t&lowbar;HEAD, t&lowbar;TAIL&period;&period;&period;&gt;&gt;`] 
|===


== Derived Classes

[cols="1,4"]
|===
| Name| Description
| xref:bsl/variant_size-02.adoc[`variant&lowbar;size&lt;t&lowbar;BSL&lowbar;VARIANT const&gt;`] 
| 
| xref:bsl/variant_size-05.adoc[`variant&lowbar;size&lt;t&lowbar;BSL&lowbar;VARIANT volatile&gt;`] 
| 
| xref:bsl/variant_size-0d.adoc[`variant&lowbar;size&lt;t&lowbar;BSL&lowbar;VARIANT const volatile&gt;`] 
| 
|===


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