Template dependant argument
-
Hi!
template<class T1> struct MyStruct { using t1_type = T1; T1 data; }; // ... MyStruct<int> myData; MyStruct<decltype(myData)::t1_type> myDataTyped; myDataTyped.data = 666; -
Hi!
template<class T1> struct MyStruct { using t1_type = T1; T1 data; }; // ... MyStruct<int> myData; MyStruct<decltype(myData)::t1_type> myDataTyped; myDataTyped.data = 666;@Wieland said in Template dependant argument:
decltype(myData)
what does
decltype(myData)returns so we can access itstypemember? -
@Wieland said in Template dependant argument:
decltype(myData)
what does
decltype(myData)returns so we can access itstypemember?@Kofr The type of
myDataisMyStruct<int>, thusdecltype(myData)yieldsMyStruct<int>. See also: decltype specifier. -
Since both variables are supposed to be of the same type it can even be shortened as
MyStruct<int> myData; decltype(myData) myDataTyped;