Сделать аргументы функции со значениями по умолчанию:
void MyFunction(string sString1, string sString2 = NULL, ..., string sString64 = NULL);
Если бы так всё просто было. А со всякими "implicit conversion from 'number' to 'string'" что делать? Должно быть более изящное решение.
SimpleUser #:
Если бы так всё просто было. А со всякими "implicit conversion from 'number' to 'string'" что делать? Должно быть более изящное решение.
Если бы так всё просто было. А со всякими "implicit conversion from 'number' to 'string'" что делать? Должно быть более изящное решение.
Шаблон:
template<typename T1, typename T2 = string, ..., typename T64 = string> void MyFunction(T1 sString1, T2 sString2 = NULL, ..., T64 sString64 = NULL);
Не работает. Или я что-то не так делаю
template<typename T1, typename T2, typename T3> void f_Print(T1 sString1, T2 sString2 = NULL, T3 sString3 = NULL) { Print(sString1, sString2, sString3); } void test() { int x = 5; f_Print("xxx", x); f_Print(x, "xxx"); }Ошибка: 'f_Print' - cannot to apply template"
Aleksey Semenov #:
я бы наверное собирал бы одну строку в принт Print(total), а string total = a+b+c; - вот и произвольное число элементов и порядок, а пропуски можно приплюсовывать " "
Вы бы лучше кодом пояснили. Или псевдокодом, если не умеете программировать. я бы наверное собирал бы одну строку в принт Print(total), а string total = a+b+c; - вот и произвольное число элементов и порядок, а пропуски можно приплюсовывать " "
А так, непонятно, что вы хотели сказать.
Повторю задачу: фактически мне нужна функция, подобная Print. Если бы MT5 был в исходниках, я просто посмотрел бы реализацию этой функции и всё (или хотя бы заголовочный файл), а тут увы, приходится угадывать, как именно она реализована.

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Известно, что в функцию Print можно передать любое число аргументов (до 64) в произвольном порядке.
Т.е. например
Да, это не красиво, но работает.
Как можно реализовать подобную функцию?