Bem, essa é a sua opinião. Penso exactamente o contrário.
O que é que não lhe agrada exactamente? Que um ponteiro em MQL é realmente uma referência? E a aritmética de endereço em MQL não faz sentido, e por isso não é utilizada!
os apontadores inteligentes também não têm aritmética de endereços, mas são utilizados por alguma razão
A rigor, não, mas na ausência de aritmética de endereço, um apontador MQL está mais próximo (ou pelo menos não mais longe) de uma referência C++ do que um apontador C++
E se assim for, a sintaxe deve ser preservada em conformidade (sem *)
A rigor, não é, mas na ausência de aritmética de endereço o ponteiro/mQL está mais próximo (ou pelo menos não mais longe) de uma referência C++ do que de um ponteiro C++
E se assim for, a sintaxe deve ser armazenada em conformidade (sem *)
Porquê torná-lo tão complicado? É suficiente fazer registos . e -> equivalentes, intercambiáveis
Figurativamente falando.
Se os tornar permutáveis, simplesmente não precisa dos dois.
Em C++, isto é possível:
class A
{
public:
void f();
};
class PtrA
{
A* mPtr;
public
PtrA( A* a ) : mPtr( a ){}
A* operator->()
{
return mPtr;
}
void f();
};
PtrA a( new A );
a.f(); // Это две разные функции
a->f(); //
O operador -> deve realmente ser acrescentado à língua, em primeiro lugar para efeitos de compatibilidade com os códigos C++ e em segundo lugar para permitir uma sobrecarga (que é útil para os apontadores inteligentes).
não há conceito agora, um objecto e um ponteiro para ele estão misturados numa pilha
Isto permite que os apontadores sejam tratados como objectos, o que, em alguns casos, dá uma notação mais simples e clara sem *
e tais apontadores podem também ser utilizados como referências
E agora propõem-se destruir tudo e regressar à Idade da Pedra, para que ninguém saiba o que
E agora propõem-se destruir tudo e voltar à Idade da Pedra para quem sabe o quê.
Bem, essa é a sua opinião. penso exactamente o contrário.
Bem, essa é a sua opinião. Penso exactamente o contrário.
A100:
А что конкретно Вас не устраивает? Что в MQL указатель это фактически ссылка?
na verdade isso não é verdade )
Enquanto na aritmética de endereços MQL não faz sentido e por isso não é utilizada!?
na verdade não é )
os apontadores inteligentes também não têm aritmética de endereços, mas são utilizados por alguma razãoA rigor, não, mas na ausência de aritmética de endereço, um apontador MQL está mais próximo (ou pelo menos não mais longe) de uma referência C++ do que um apontador C++
E se assim for, a sintaxe deve ser preservada em conformidade (sem *)
Não, não havia razões sérias.
A única justificação para a sua ausência é cuidar das mentes frágeis dos utilizadores não familiarizados com C++.
A rigor, não é, mas na ausência de aritmética de endereço o ponteiro/mQL está mais próximo (ou pelo menos não mais longe) de uma referência C++ do que de um ponteiro C++
E se assim for, a sintaxe deve ser armazenada em conformidade (sem *)
Porquê torná-lo tão complicado? É suficiente fazer registos . e -> equivalentes, intercambiáveis
Figurativamente falando.
Se os tornar permutáveis, simplesmente não precisa dos dois.
Em C++, isto é possível:
O operador -> deve realmente ser acrescentado à língua, em primeiro lugar para efeitos de compatibilidade com os códigos C++ e em segundo lugar para permitir uma sobrecarga (que é útil para os apontadores inteligentes).
O ponto é um operador universal em MQL.
Porque é que a MQL não corrigiu o bug de que uma classe base é implicitamente lançada para uma classe derivada? Nem sequer um aviso do compilador!