#include <iostream>
#include <array>
template<typename Type, size_t ItemCount>
class Test
{
public:
std::array<Type, ItemCount> Items;
template<typename T>
Test(std::initializer_list<T> aValues)
{
auto curIndex = 0u;
for (auto& curVal : aValues)
{
Items[curIndex] = curVal;
++curIndex;
}
}
};
Test<float, 2> TestFunc()
{
return {5.0f, 10.5f};
}
int main() {
auto valueToPrint = TestFunc();
std::cout << valueToPrint.Items[0] << ", " << valueToPrint.Items[1] << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YXJyYXk+Cgp0ZW1wbGF0ZTx0eXBlbmFtZSBUeXBlLCBzaXplX3QgSXRlbUNvdW50PgpjbGFzcyBUZXN0CnsKcHVibGljOgoJc3RkOjphcnJheTxUeXBlLCBJdGVtQ291bnQ+IEl0ZW1zOwoJCgl0ZW1wbGF0ZTx0eXBlbmFtZSBUPgoJVGVzdChzdGQ6OmluaXRpYWxpemVyX2xpc3Q8VD4gYVZhbHVlcykKCXsKCQlhdXRvIGN1ckluZGV4ID0gMHU7CgkJZm9yIChhdXRvJiBjdXJWYWwgOiBhVmFsdWVzKQoJCXsKCQkJSXRlbXNbY3VySW5kZXhdID0gY3VyVmFsOwoJCQkrK2N1ckluZGV4OwoJCX0KCX0KfTsKClRlc3Q8ZmxvYXQsIDI+IFRlc3RGdW5jKCkKewoJcmV0dXJuIHs1LjBmLCAxMC41Zn07Cn0KCmludCBtYWluKCkgewoJYXV0byB2YWx1ZVRvUHJpbnQgPSBUZXN0RnVuYygpOwoJc3RkOjpjb3V0IDw8IHZhbHVlVG9QcmludC5JdGVtc1swXSA8PCAiLCAiIDw8IHZhbHVlVG9QcmludC5JdGVtc1sxXSA8PCBzdGQ6OmVuZGw7CglyZXR1cm4gMDsKfQ==