В стандарте указано, что main
имеет две действующие (то есть гарантированные работы) сигнатуры; а именно:Могут ли аргументы основной подписи на C++ иметь unsiged и const qualifiers?
int main();
int main(int, char*[]);
Мой вопрос прост, будет ли что-то вроде следующего быть законным?
int main(const unsigned int, const char* const* argv);
Мои тесты говорят «да», но я не уверен в ответе, потому что я не перегружать main
путем изменения int
к unsigned int
, а также отсутствия верхнего уровня const
-ness из ARGV? Если я, то это явно запрещено.
Итак, эти модификации гарантированно работают на совместимый с стандартами компилятор?
Почему вы хотите сделать что-то подобное? Просто напишите стандартно-совместимый код – Glen
Glen, I _want_, чтобы написать соответствующий код. Вот почему я задал этот вопрос в первую очередь. – bh9042
Затем объявите 'int main (int, char **)' и будьте на своем пути. –