Использование Extended Embedded Cpp.Как я могу сделать этот результат в ошибке компиляции в сборке выпуска:
Param okParam("Yeah!"); // this line should be ok
Param nOkParam("REEEEEEEEEEE"); // too big array, not ok. compiler error.
где:
int const c_max = 10;
template<int N>
struct Param
{
char value[c_max];
Param(char const (&p_value)[N])
{
memcpy(value, p_value, sizeof(p_value));
}
};
Я не думаю, что вы можете шаблонизировать конструктор, поэтому вся структурадолжен быть шаблон, верно?
Я хочу, чтобы это обеспечивало чистую ошибку компилятора, чтобы человек, использующий это, сразу заметил это.
Наша версия расширенного встроенного C ++ не 'Я не уверен, если это вообще возможно.
Я ищу какой-нибудь способ, чтобы шаблон привел к хорошей ошибке компиляции.К сожалению, я не могу использовать повышение, так как платформа не будет поддерживать его.