Ошибки, баги, вопросы - страница 2869
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
У Вас - синтаксически обоснованная ошибка - приведите пример рабочего кода с (typename) в скобках. С таким же успехом можно и (OnStart) в скобках написать было
Ну вот так, нет же синтаксической ошибки
typename(J)
А вот так, уже считать за синт ошибку?
(typename)J
Когда по идее тут работает принцип преобразование типа, и справка допускает оба варианта.
Ну вот так, нет же синтаксической ошибки
А вот так, уже считать за синт ошибку?
Когда по идее тут работает принцип преобразование типа, и справка допускает оба варианта.
typename - это не тип, это ключевое слово. В данном случае тип - это T. Приведение идет к типу, а не к ключевому слову
Философское обоснование - здесь не подходит. Хотя, если бы MQL был бы абстрактным языком, то наверное и к ключевому слову можно было сделать приведение и он переместился бы в рейтинге сразу на 1ое место
typename - это не тип, это ключевое слово. В данном случае тип - это T. Приведение идет к типу, а не к ключевому слову
Философское обоснование - здесь не подходит. Хотя, если бы MQL был бы абстрактным языком, то наверное и к ключевому слову можно было сделать приведение и он переместился бы в рейтинге сразу на 1ое место
Я понимаю что typename это не тип.
Но в данном случае, мы получаем преобразование.
Из константы, получаем её тип.
Может это не правильная запись по синтаксису? Но она работает.
#define A '+' typename(A)
Я понимаю что typename это не тип.
Но в данном случае, мы получаем преобразование.
Из константы, получаем её тип.
Может это не правильная запись по синтаксису? Но она работает.
Она работает, но не так как Вы себе это представляете. Вы получаете не тип, а string. Хотел это на примере показать, но получил ошибку ниже
Но это не значит, что Вы правы - просто очередная ошибка компилятора случайно всплыла
А какая разница между (1) и (2) ? Уважаемые разработчики - может быть Roman прав и теперь typename возвращает тип?
Ожидался результат: string
Она работает, но не так как Вы себе это представляете. Вы получаете не тип, а string. Хотел это на примере показать, но получил ошибку:
Как это не тип?
Как раз получаю тип, а не string.
ushort это не string.
Как это не тип?
Как раз получаю тип, а не string.
ushort это не string.
Вы получаете не ushort, а "ushort". Разница понятна? Если нет, то читаем документацию до понимания
Хотя получить в результате реальный ushort было бы круто!
Вы получаете не ushort, а "ushort". Разница понятна? Если нет, то читаем документацию до понимания
Так это уже Print() выводит на печать как "ushort" строковым литералом.
При чём тут это? Сам факт, что typename возвращает имя типа!
Так это уже Print() выводит на печать как "ushort" строковым литералом.
При чём тут это? Сам факт, что typename возвращает имя типа!
Документацию по ссылке прочли? Там и пример есть соответствующий. К сожалению мой пример не удался
Документацию по ссылке прочли?
Причём тут шаблоны?
Если синтаксис использования не для шаблона, в даном случае.