#include <cstdint>
#include <array>

template <typename T, std::size_t N>
T (*as_raw_array(std::array<T, N>& a)) [N]
{
    return reinterpret_cast<T(*)[N]>(a.data());
}

void func(const char* param[][3]) {}

class MyClass
{
public:
    MyClass() : bar{nullptr, nullptr, nullptr} {}

    void foo() { func(as_raw_array(bar)); }
private:
    std::array<const char*, 3> bar;
};

int main()
{
	return 0;
}
