Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Como são estabelecidas as ligações cruzadas entre as classes descendentes que têm uma raiz comum em algum lugar profundo da hierarquia?
Por exemplo: As classes F e Z são os elos finais de uma cadeia sucessória com uma raiz comum na hierarquia, a classe A.
Como se pode obter dados ou métodos da classe Z da classe F?
Você não pode. Não existe tal coisa. Mas não há necessidade disso.
Depois de criar objetos você pode passar um ponteiro de um objeto para o segundo e um ponteiro do segundo objeto para o primeiro.
Embora, se estivermos falando especificamente sobre a classe, você pode abordar qualquer objeto através de dois colons. Mas para que você precisa disso? É necessário às vezes, é claro, mas é uma característica extremamente menor do OOP.
De jeito nenhum. Não existe tal coisa. Mas você não precisa.
Depois de criar objetos, você pode passar um ponteiro de um objeto para o segundo e um ponteiro do segundo objeto para o primeiro.
Embora, se estivermos falando especificamente sobre a classe, você pode se referir a qualquer coisa através de dois colons. Mas para que você precisa disso?
Exemplo: A classe F armazena os métodos Cor e Comprimento, e a classe Z armazena os métodos Som e Largura.
Aparece um Objeto que tem duas propriedades, Comprimento e Largura, mas são calculados por diferentes classes F e Z. O que fazer? Criar uma classe separada com a repetição desses métodos, ou como posso acessá-los? (Com quatro pontos?).
Exemplo: A classe F armazena os métodos Cor e Comprimento, e a classe Z armazena os métodos Som e Largura.
Aparece um Objeto que tem duas propriedades, Comprimento e Largura, mas são calculados por diferentes classes F e Z. O que fazer? Criar uma classe separada com a repetição desses métodos, ou como posso acessá-los? (Com quatro pontos?).
Você poderia criar uma nova classe e incluir as classes F e Z nela.
Você pode criar uma nova classe e incluir nela as classes F e Z.
Você pode criar uma nova classe e incluir nela as classes F e Z.
Alternativamente, na classe onde você quer os dados da outra classe, você pode fazer um método para obter um ponteiro para a classe desejada.
Um "arco" de classe? Entendi. Obrigado.
Você pode simplesmente obter um ponteiro para a classe que deseja, e usar o ponteiro para obter um objeto de classe. Mas você tem que ter cuidado para não colocar um ponteiro em um objeto de classe vazio ou novo.
Você pode simplesmente obter um ponteiro para a classe desejada, e usar o ponteiro para obter um objeto de classe. Mas você tem que ter cuidado para não colocar um ponteiro em um objeto de classe vazio.
Uma classe de "curvatura"? Estou vendo, obrigado.
No exemplo
A classe Y contém variáveis com tipos de classes F e Z.
Mas se você já tiver objetos das classes F e Z criados e usados em algum lugar, não poderá acessá-los no objeto Y. Haverá dois novos objetos das classes F e Z no objeto Y.
E para ter acesso aos objetos das classes F e Z criados anteriormente e já utilizados, você precisa obter referências aos objetos F e Z na classe Y - então a classe Y pode operar com esses dados, que já estão escritos em F e Z, em vez de usar F e Z novos e imaculados.
Mas se você criar tal objeto, então F e Z nele dará acesso às classes F e Z, e você terá que preenchê-las somente através da classe Y - novamente, dê acesso aos objetos F e Z a partir dele, obtenha um ponteiro para o objeto que você precisa e trabalhe com ele através do ponteiro.
Sutilezas. Vejo. A hierarquia da herança é conveniente quando os dados são claramente classificáveis, pré-definidos e inequívocos. medida que os objetos se tornam mais complexos, podem aparecer combinações de métodos e propriedades não destinadas a classes e isto requer a construção de "amarrações" - ou seja, ligações cruzadas entre classes. Isto nem sempre é conveniente e pode quebrar o belo esquema de distribuição e forçá-lo a ser revisto.
Você não precisa quebrar nada - você só precisa adicionar um método à classe que dê um ponteiro para o objeto requerido de outra classe.
Nos artigos recentes, passei desta forma indicações deobjetos já criados e em funcionamentoda classe de coleção de símbolos e do objeto da conta corrente, que já têm dados acumulados, em objetos de comércio. E a classe comercial lida com eles como se sempre os tivesse tido.