Hello Ellery,

BCS wrote:

Hello Ellery,

Hello.

Today I was looking at the grammar for template value parameters and
realized I didn't know what the conditional expression is for in

TemplateValueParameter => BasicType Declarator :
ConditionalExpression

So what does it do?

(I assume = ConditionalExpression is the default value for the
parameter)

That is correct. it would seem that expression should be used, but
that includes an assignment expression so the next things down is
used.

http://www.digitalmars.com/d/1.0/expression.html#AssignExpression

Okay, let me rephrase that:

When you have a <something> preceded by a colon in a template value
parameter, what are its semantics? Is it the same as a default
parameter value? Is it some sort of constraining expression? Is it a
vestige?


You should check me on this but I think it's explicit instantiation: "This is the special case for when given some value".


Reply via email to