I have an ERC721 contract. In the constructor, X NFTs are minted with X being passed as an argument to the constructor. I need to keep track of various things for each NFT, such as the price. The price would need to be an array of uints with slots equal to x, i.e.
uint[x] public prices;
But I need prices to be available to other functions in the future. If I just define the variable in the constructor, it will not be a global variable. But if I defined it outside the constructor or any other function, I am unable to define the size at a time after contract deployment.
Wat do?