Bogue de compilation avec le paramètre template = void* - page 17

 

Y avait-il un code pyramidal des supporters par hasard ? Si quoi que ce soit, je serai le premier. )))))


 
Ilya Malev:

Y avait-il un code pyramidal des supporters par hasard ? Si quoi que ce soit, je serai le premier. )))))


Cela pourrait être attribué au camp des partisans du code horizontal.

 
Dmitry Fedoseev:

Cela peut être attribué au camp des partisans du code horizontal.

Je suis d'accord, c'était un piètre effort. Les meilleurs exemples étaient si transcendants qu'ils n'ont pas survécu à la transition vers notre réalité mortelle...

 
Ilya Malev:

Y avait-il un code pyramidal des supporters par hasard ? Si quoi que ce soit, je serai le premier. )))))


C'est un obscurcissement.

 
Stanislav Korotky:

C'est un obscurcissement.

Oui, je suis loin de vous. J'ai, pour ainsi dire, un objectif à atteindre ;))

 
pavlick_:

En général, oui, vous pouvez le faire.

Si sans emballage, il n'est pas supprimé, avec emballage, il est supprimé, tout est clair comme de l'eau de roche.

ZS : mais si je le faisais, je le ferais de la manière la plus similaire possible à la bibliothèque standard plus (noms, comportement, etc), donc pas de choix pour moi. Pourquoi s'embêter à créer une autre spécification alors que tout est déjà écrit ?

- La création de structures automatiques dans le cadre de la POO dynamique est un non-sens.

- Les structures dynamiques doivent être divisées en deux catégories : celles qui sont créées pour un processus spécifique (comme une requête sur une sélection) et celles qui sont sélectionnées à partir d'un ensemble d'éléments existant (et il peut y avoir des types mixtes).

- Jusqu'à présent, je peux voir une solution dans la comptabilisation du nombre de références "propres" à un objet, il n'est pas nécessaire de créer des wrappers dessus (je ne suis pas vraiment sûr de la façon dont cela résoudrait le problème), mais je devrais dupliquer le mécanisme de pointeur déjà existant dans µl, en y ajoutant mes méthodes, au moins en incluant le compteur de référence (il a été discuté dans votre article de hubra d'ailleurs, je le lisais il y a quelques jours, quand je cherchais une solution sur les pointeurs et j'ai réalisé que j'étais déjà arrivé à la même solution moi-même).

- J'essaierai de réaliser tout cela, si quelque chose de valable en ressort, je le posterai sur le forum et/ou dans la kodobase de toute façon :).

 
Ilya Malev:

- Créer des structures automatiques dans une POO dynamique est un non-sens

- Les structures dynamiques doivent être divisées en deux catégories : celles qui sont créées pour un processus spécifique (comme une requête sur une sélection) et celles qui sont sélectionnées à partir d'un ensemble d'éléments existant (et il peut y avoir des types mixtes).

- Jusqu'à présent, je peux voir une solution dans la comptabilisation du nombre de références "propres" à un objet, il n'est pas nécessaire de créer des wrappers dessus (je ne suis pas vraiment sûr de la façon dont cela résoudrait le problème), mais je devrais dupliquer le mécanisme de pointeur déjà existant dans µl, en y ajoutant mes méthodes, au moins en incluant le compteur de référence (il a été discuté dans votre article de hubra d'ailleurs, je le lisais il y a quelques jours, quand je cherchais une solution sur les pointeurs et j'ai réalisé que j'étais déjà arrivé à la même solution moi-même).

- J'essaierai d'implémenter tout cela et si quelque chose de bien en ressort, je le posterai sur le forum et/ou dans kodobase de toute façon :)

Très intéressant. Fatigué des pi@#$holes.

 
Ou mieux encore, ne le faites pas. Ne rien publier...
 
Ilya Malev:

Eh bien, personne n'interdit de passer une option supplémentaire lors de la création d'un tableau - si l'on veut supprimer les éléments lors de la suppression ou non, et de l'activer ou de la désactiver par défaut (à votre convenance). Après tout, vous ne pouvez jamais deviner si vous voulez supprimer des éléments ou non)).

Vous avez donc écrit un tel tableau et vous avez une surprise : comment désactiver l'opérateur de copie=() et le constructeur de copie (par défaut il est absent dans µl de toute façon) dans un tableau de pointeurs qui nécessitent une suppression ? Cela montrera clairement que le paramètre via le constructeur est une cochonnerie. Deux idées vont surgir :

1. passer le type avec l'instruction supprimée à travers les paramètres du modèle et en faire un membre de la classe (et c'est un gaspillage inutile de ressources).

2. passer un pointeur dans un wrapper :) (oui, oui - ce satané emballage).

3. Vous pourriez utiliser une spécialisation partielle pour vous en sortir, mais il n'y en a pas.

En général, la bibliothèque Plus est un chef-d'œuvre. Si vous pensez pouvoir écrire mieux, vous avez probablement tort.

 
pavlick_:

0. Vous avez donc écrit un tel tableau et vous vous retrouvez avec une surprise : comment désactiver la copie de l'operator=() et la copie du constructeur (par défaut il n'est pas dans µl de toute façon) dans un tableau de pointeurs qui nécessitent une suppression ? Cela montrera clairement que le paramètre via le constructeur est une cochonnerie. Deux idées vont surgir :

1. passer le type avec l'instruction supprimée à travers les paramètres du modèle et en faire un membre de la classe (et c'est un gaspillage inutile de ressources).

2. passer un pointeur wrapper :) (oui, oui - ce satané emballage).

3. Vous pourriez utiliser la spécialisation partielle pour vous en sortir, mais ce n'est pas le cas.

En général, la bibliothèque Plus est un chef-d'œuvre, si vous pensez que vous écrirez mieux, vous avez probablement tort.

C'est très probablement le cas, et c'est un chef-d'œuvre, mais il a été écrit pour un éventail de tâches beaucoup plus large que celui nécessaire pour construire la plupart des CTs sensés. Je ne considère pas les variantes comme les réseaux neuronaux, l'utilisation de processeurs graphiques et autres danses avec tambourins.

0. Je vous ai dit que les objets dynamiques déjà créés sont transférés. Il s'agit soit d'objets spécifiquement créés pour la sélection (vous devrez les supprimer par la suite), soit de références à des objets qui sont utilisés mais non supprimés. L'objet liste n'est pas responsable de la création, mais seulement de l'adressage, de l'accès et du stockage tant qu'il est nécessaire.

1. ...

2. ...

3...

En bref, vous devez envisager des tâches spécifiques et détaillées, et non des tâches abstraites. Si vous devez écrire une interface graphique, ce n'est pas ce que je veux dire non plus. Un gars dans un fil de discussion voisin semble avoir écrit un joli gui utilisant des structures pures).

Raison: