LINUX.ORG.RU

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

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

я просто не очень понимаю, чего ты желаешь добиться

«не просто new, а с GC». Хочу, чтобы ты написал GC для плюсов, да :)

Для начала - при чём тут перегрузка операторов new и delete? У new бы был тип результат void* -> наш_указатель<T>*, то есть совсем не то что нужно. Вот у gcnew из C++/CLI должен быть правильный тип, то есть void^ -> T^, но это уже не стандартный С++, а вовсе расширение.

и что эти ссылки дают полезного?

Не понял вопрос.

это совсем не умный указатель

unique_ptr - не умный? А какой тогда умный? Если в умный указатель можно передать обычный, то ничего не спасёт от его порчи и последующего вторичного «умного» вызова delete.

сначала кастуя в int** мой класс

Ну ты спрашивал «как мне получить значение поля структуры?», ответ очевидный - просто получить. Но если язык сломан, то приходится делать костыль-зеркало и делать каст к нему.

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

я просто не очень понимаю, чего ты желаешь добиться

«не просто new, а с GC». Хочу чтобы ты написал GC для плюсов, да :)

Для начала - при чём тут перегрузка операторов new и delete? У new бы был тип результат void* -> наш_указатель<T>*, то есть совсем не то что нужно. Вот у gcnew из C++/CLI должен быть правильный тип, то есть void^ -> T^, но это уже не стандартный С++ а вовсе расширение.

и что эти ссылки дают полезного?

Не понял вопрос.

это совсем не умный указатель

unique_ptr - не умный? А какой тогда умный? Если в умный указатель можно передать обычный, то ничего не спасёт от его порчи и последующего вторичного «умного» вызова delete.

сначала кастуя в int** мой класс

Ну ты спрашивал «как мне получить значение поля структуры?», ответ очевидный - просто получить. Но если язык сломан, то приходится делать костыль-зеркало и делать каст к нему.