VD
Size: a a a
VD
G
G
/¯
G
O
/¯
O
G
O
G
/¯
G
/¯
O
O
TS
RM
struct_mutable MyStruct
{
uint32_t arg1 {};
uint64_t& arg2 {};
}
void foo(MyStruct input)
{
input.arg1 = 10;
input.arg2 = 55;
}
void main()
{
MyStruct tmp;
foo(tmp);
// cout: arg1 is 0, arg2 is 55
}
RM
void foo(uint32_t arg1, uint64_t& arg2)
{
arg1 = 10;
arg2 = 55;
}
void main()
{
uint64_t arg2 {};
foo(10, arg2);
// cout: 0, arg2 is 55
}
АК
void foo(uint32_t arg1, uint64_t& arg2)
{
arg1 = 10;
arg2 = 55;
}
void main()
{
uint64_t arg2 {};
foo(10, arg2);
// cout: 0, arg2 is 55
}