Bug de compilador com parâmetro de modelo = vazio* - página 17

 

Por acaso havia um código em pirâmide de apoiantes? Se alguma coisa, eu serei o primeiro. )))))


 
Ilya Malev:

Por acaso havia um código em pirâmide de apoiantes? Se alguma coisa, eu serei o primeiro. )))))


Isto poderia ser atribuído ao acampamento dos adeptos do código horizontal.

 
Dmitry Fedoseev:

Isto pode ser atribuído ao acampamento dos adeptos do código horizontal.

Concordo, foi um esforço pobre. Os melhores exemplos foram tão transcendentes que não sobreviveram à transição para nossa realidade mortal...

 
Ilya Malev:

Por acaso havia um código em pirâmide de apoiantes? Se alguma coisa, eu serei o primeiro. )))))


Isto é uma ofuscação.

 
Stanislav Korotky:

É uma ofuscação.

Sim, estou muito longe de você. Eu tenho, por assim dizer, algo pelo qual lutar ))

 
pavlick_:

Em geral, sim, você pode fazer isso.

Se sem embrulho, não é apagado, com embrulho, é apagado, tudo é cristalino.

ZS: mas se o fizesse, eu o faria da forma mais semelhante possível ao padrão mais a biblioteca (nomes, comportamento, etc.), então não tenho escolha. Por que se preocupar em criar outra especificação quando tudo já está escrito?

- Criar estruturas automáticas dentro do OOP dinâmico é um disparate

- As estruturas dinâmicas devem ser divididas naquelas criadas para um processo específico (como uma consulta sobre uma seleção) ou como uma seleção a partir de um conjunto de elementos existentes (e pode haver tipos mistos)

- Até agora eu posso ver uma solução em número contábil de referências "próprias" a um objeto, não é necessário criar invólucros sobre ele (não consigo ver realmente como isso resolveria o problema), mas tenho que duplicar o mecanismo de ponteiros já existentes em µl, adicionando meus métodos a eles, pelo menos incluindo o contador de referências (a propósito, foi discutido em seu artigo de hubra, estava lendo-o há apenas alguns dias, quando procurei uma solução sobre ponteiros e percebi que eu mesmo já tinha chegado à mesma solução).

- Vou tentar perceber tudo isso, se alguma coisa que valha a pena sair, vou postar no fórum e/ou no kodobase de qualquer forma :).

 
Ilya Malev:

- Criar estruturas automáticas dentro de um OOP dinâmico é um absurdo

- As estruturas dinâmicas devem ser divididas naquelas criadas para um processo específico (como uma consulta sobre uma seleção) ou como uma seleção a partir de um conjunto de elementos existentes (e pode haver tipos mistos)

- Até agora eu posso ver uma solução em número contábil de referências "próprias" a um objeto, não é necessário criar invólucros sobre ele (não consigo ver realmente como isso resolveria o problema), mas tenho que duplicar o mecanismo de ponteiros já existentes em µl, adicionando meus métodos a eles, pelo menos incluindo o contador de referências (a propósito, foi discutido em seu artigo de hubra, estava lendo-o há apenas alguns dias, quando procurei uma solução sobre ponteiros e percebi que eu mesmo já tinha chegado à mesma solução).

- Vou tentar implementar tudo isso e se algo de bom sair disso, vou postar no fórum e/ou no kodobase de qualquer forma :)

Muito interessante. Cansado de pi@#$holes.

 
Ou melhor ainda, não o faça. Não publicar nada...
 
Ilya Malev:

Bem, ninguém proíbe passar a opção adicional ao criar uma matriz - seja para apagar elementos ao apagá-la ou não, e fazê-lo ligado ou desligado por padrão (a seu gosto). Afinal, você nunca pode adivinhar se deseja ou não apagar itens)).

Então você escreveu tal matriz e tem uma surpresa: como desativar o operador de cópia=() e o construtor de cópia (por padrão, ele está ausente em µl de qualquer forma) em uma matriz de ponteiros que requerem exclusão? Isto deixará claro que o parâmetro via construtor é sucata. Duas idéias surgirão:

1. passar o tipo com a declaração eliminada através dos parâmetros do modelo e torná-lo um membro da classe (e isto é um desperdício desnecessário de recursos).

2. Passe um ponteiro em um invólucro :) (sim, sim - aquele maldito invólucro).

3. Você poderia usar a especialização parcial para sair dela, mas não há nenhuma.

Em geral a biblioteca plus é uma obra-prima, se você acha que pode escrever melhor, provavelmente está errado.

 
pavlick_:

0. Então você escreveu tal matriz e acabou com uma surpresa: como desativar o copying operator=() e o copying constructor (por padrão não está em µl de qualquer forma) em uma matriz de ponteiros que requerem exclusão? Isto deixará claro que o parâmetro via construtor é sucata. Duas idéias surgirão:

1. passar o tipo com a declaração eliminada através dos parâmetros do modelo e torná-lo um membro da classe (e isto é um desperdício desnecessário de recursos).

2. passe uma embalagem com ponteiro :) (sim, sim - esse maldito invólucro).

3. Você poderia usar a especialização parcial para sair dela, mas ela não está lá.

Em geral, a biblioteca plus é uma obra-prima, se você acha que vai escrever melhor, provavelmente está errado.

O mais provável é que seja, e é uma obra-prima, mas escrita para uma gama muito maior de tarefas do que as necessárias para construir TCs mais sensatas. Não considero variantes como redes neurais, utilizando processador gráfico e outras danças com pandeiros.

0. Eu lhe disse que os objetos dinâmicos já criados são transferidos. Trata-se de objetos criados especificamente para seleção (é preciso apagá-los posteriormente), ou referências a objetos que são usados mas não apagados. O objeto da lista não é responsável pela criação. apenas pelo endereçamento, acesso e armazenamento enquanto for necessário.

1. ...

2. ...

3...

Em resumo, você precisa considerar tarefas específicas e detalhadas, não tarefas abstratas. Se você tem que escrever algum engano, isso também não é o que eu quero dizer. Algum cara em uma linha próxima parece ter escrito uma boa manobra usando estruturas puras).