cppreference göre, aşağıdaki kod, yasal:C++, değişken şablon parametrelerinden sonra normal parametrelere izin veriyor mu?
template<typename... Args>
void f(Args&&..., bool)
{}
int main()
{
f(1, 2, 3, true); // error! see below for details.
}
: Ancak1>main.cpp(59,2): error : no matching function for call to 'f' 1> f(1, 2, 3, true); 1> ^ 1> main.cpp(54,6) : note: candidate function not viable: requires 1 argument, but 4 were provided 1> void f(Args&&..., bool) 1> ^ 1> 1 error generated.
lock_guard(MutexTypes&... m, std::adopt_lock_t t);
aşağıdaki kod (-std = C++ 1 Z) clang 3.8 derlenmiş edilemez
C++, değişken parametrelerden sonra normal parametrelere izin veriyor mu?
Derleyicim 3.8 sürümüdür. gcc 6.2 de başarısız olur. – xmllmx
'lock_guard 'örneğiyle, bir sınıf yapıcısı olduğundan, tüm şablon argümanlarının işlev çağrısı argümanlarından çıkarılmaya çalışmak yerine önceden biliniyor olduğunu unutmayın. – BoBTFish
C++ 17, C++ 11 değil. – ForEveR