I have the following class in C++11:
class MyTable
{
    public:
    enum class EntryType
    {
        USED, FREE
    };
    MyTable(EntryType value)
    {
        for (uint32_t i = 0; i < 10; ++i)
        {
            memset(_table[i].data(), (int)value, sizeof(_table[0][0]) * 50);
        }
    }
    array<array<EntryType, 50>, 10> _table;
}
Trying to construct an object of MyTable with value of EntryType::FREE, every item in the 2-dimensional array has the value of 0x01010101 (1b every 8 bits), instead of the expected value of just 0x1
I'm guessing it has something to do with my value being casted to int, but I don't know what I'm supposed to do in order to fix it.