LINUX.ORG.RU

История изменений

Исправление bugfixer, (текущая версия) :

отлично налазит begin/cbegin

Это очень плохо налазит. Вы не хотите проверять что Ваш cache up-to-date на каждом доступе через итератор, и уж тем более не хотите заставлять его синхронизироваться на каждом доступе (что потенциально может быть очень дорого, несопоставимо дороже чем собственно доступ). Вы хотите это делать в контролируемые моменты времени. Какие именно - зависит от конкретной задачи.

Ну этот tree_view всё равно должен иметь доступ к кишкам tree, то есть быть наследником или там friend.

Вовсе не обязательно. Достаточно из tree заэкспозить read-only всё то что нужно для эффективной синхронизации.

Исходная версия bugfixer, :

отлично налазит begin/cbegin

Это очень плохо налазит. Вы не хотите проверять что Ваш cache up-to-date на каждом доступе через итератор, и уж тем более не хотите заставлять его синхронизироваться на каждом доступе что потенциально может быть очень дорого. Вы хотите это делать в контролируемые моменты времени. Какие именно - зависит от конкретной задачи.

Ну этот tree_view всё равно должен иметь доступ к кишкам tree, то есть быть наследником или там friend.

Вовсе не обязательно. Достаточно из tree заэкспозить read-only всё то что нужно для эффективной синхронизации.