Reputation: 23
"Getting an error in below code. Please help me resolve this. How can I return struct array. I want the array in return in solidity 0.6.0"
pragma solidity >=0.4.23 <0.6.0;
function get_last24_hours_users()
public
view
returns (
uint256[] memory current_timestamp,
address[] memory user_referrer_address,
address[] memory user_address
)
{
for (uint256 i = 0; i < users_count; i++) {
User memory user = user[i];
current_timestamp[i] = user.current_timestamp;
user_referrer_address[i] = user.user_referrer_address;
user_address[i] = user.user_address;
}
return (current_timestamp, user_referrer_address, user_address);
}
Upvotes: 0
Views: 685
Reputation: 775
You have not initialise empty array of size users_count
for these variables:
current_timestamp
user_referrer_address
user_address
To fix it add this code at the start of function
uint[] memory current_timestamp = new uint[](users_count);
address[] memory user_referrer_address = new address[](users_count);
address[] memory user_address = new address[](users_count);
Upvotes: 1