|
3 / 3 / 1
Регистрация: 04.04.2018
Сообщений: 351
|
||||||
Shared_ptr как поле класса23.04.2020, 13:45. Показов 2786. Ответов 17
Метки нет (Все метки)
Как обратиться к полю типа shared_ptr? У меня не получается в деструкторе или в методе обратиться к shared_ptr полю например some->size; как в примере
0
|
||||||
| 23.04.2020, 13:45 | |
|
Ответы с готовыми решениями:
17
Запрет shared_ptr быть наследником определённого класса Массив объектов одного класса как поле другого класса Инициализация экземпляра класса, как поле другого класса |
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||||
| 23.04.2020, 13:51 | ||||||||
1
|
||||||||
|
фрилансер
6446 / 5642 / 1128
Регистрация: 11.10.2019
Сообщений: 15,009
|
||||||
| 23.04.2020, 14:12 | ||||||
Сообщение было отмечено dimmarvel как решение
Решение
dimmarvel, size у тебя - статическое поле. Указатель тут ни при чём
Добавлено через 1 минуту если было бы не статическое поле, то
1
|
||||||
|
3 / 3 / 1
Регистрация: 04.04.2018
Сообщений: 351
|
|
| 23.04.2020, 15:26 [ТС] | |
|
Алексей1153, а как обратиться к data через some?
0
|
|
|
фрилансер
6446 / 5642 / 1128
Регистрация: 11.10.2019
Сообщений: 15,009
|
||||||
| 23.04.2020, 15:28 | ||||||
Сообщение было отмечено dimmarvel как решение
Решение
dimmarvel,
1
|
||||||
|
87 / 87 / 18
Регистрация: 11.06.2018
Сообщений: 302
|
|
| 23.04.2020, 17:05 | |
|
0
|
|
|
фрилансер
6446 / 5642 / 1128
Регистрация: 11.10.2019
Сообщений: 15,009
|
|
| 23.04.2020, 17:14 | |
|
ablex, можно обратиться, конечно
0
|
|
|
87 / 87 / 18
Регистрация: 11.06.2018
Сообщений: 302
|
|
| 23.04.2020, 17:14 | |
|
2
|
|
|
87 / 87 / 18
Регистрация: 11.06.2018
Сообщений: 302
|
||
| 23.04.2020, 17:26 | ||
|
0
|
||
|
фрилансер
6446 / 5642 / 1128
Регистрация: 11.10.2019
Сообщений: 15,009
|
||||||||||||||||
| 23.04.2020, 17:41 | ||||||||||||||||
|
вот так не упадёт
осталось только понять, зачем тут статический size ![]() Добавлено через 1 минуту а, пропустил static DLinkList<T>* p;видимо, это для него. Заменяем на
1
|
||||||||||||||||
|
Вездепух
12930 / 6798 / 1820
Регистрация: 18.10.2014
Сообщений: 17,205
|
|||||||
| 23.04.2020, 17:46 | |||||||
|
Пробуем
У вас в конструкторе написана чушь, но ваш вопрос ведь про деструктор, так? Так о чем речь вообще?
0
|
|||||||
|
Комп_Оратор)
|
||
| 23.04.2020, 18:06 | ||
|
Добавлено через 2 минуты dimmarvel, вы что самописных списков не писали? Как татк получилось, что вы не знаете что указатель "на себя" нельзя инициализировать в конструкторе?
0
|
||
|
Вездепух
12930 / 6798 / 1820
Регистрация: 18.10.2014
Сообщений: 17,205
|
|||
| 23.04.2020, 18:08 | |||
|
Оно не должно компилироватсья из-за size(0) в конструкторе (со статическими полями так, разумеется, нельзя) и из-за some(make_shared<T>()) (несоответствие типов).А вот some2(new DLinkList<T>()) - формально корректно, но бесконечная рекурсия, как правильно было сказано выше.
0
|
|||
|
87 / 87 / 18
Регистрация: 11.06.2018
Сообщений: 302
|
||
| 23.04.2020, 21:59 | ||
|
0
|
||
|
Комп_Оратор)
|
|||||
| 23.04.2020, 22:18 | |||||
|
0
|
|||||
|
3 / 3 / 1
Регистрация: 04.04.2018
Сообщений: 351
|
|
| 24.04.2020, 15:00 [ТС] | |
|
IGPIGP, я просто пытался познакомится с умными указателями и пробовал всякие идеи которые приходили в голову, т.е. код этот не нужно принимать в серьез)
Просто когда я пишу object-> визуалка автоматически подсвечивает мне переменные к которым я могу обратиться через этот объект, а в случае с shared_pointer как раз вот не подсвечивал и я подумал что я что-то не так делаю и к экземпляру класса типа shared_ptr нельзя обратиться, после создал обычный указатель и у меня всё подсвечивалось, впрочем как и всегда, я решил спросить почему я не могу обратиться к полю класса тк подумал что, как я говорил, к нему нельзя обратиться
0
|
|
|
Комп_Оратор)
|
||||||||||||||
| 24.04.2020, 16:33 | ||||||||||||||
|
https://docs.microsoft.com/ru-... ew=vs-2019
Один идиот считающийся супер-сеньйором, пытался доказать мне на собеседовании, что указатель на счётчик ссылок в shared_ptr можно реализовать как статическое поле. Но идиот он не поэтому. Просто натура у него такая. А про статическое поле и shared_ptr он потом сказал, что пошутил. Вот так. Учить смарт пойнтеры не зная азов, это уже шутка. Потому что смешно. Потом, вопросы про обращение. Тоже не те что нужны на деле. Много смешного. Соберитесь и постарайтесь шутить более осмысленно.
1
|
||||||||||||||
| 24.04.2020, 16:33 | |
|
Помогаю со студенческими работами здесь
18
Вектор, как поле класса Массив как поле класса Дерево как поле класса Как вводить поле класса? Класс как поле класса Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|