реализация_memento_customvector_cow_cpp
Реализовать классы Memento и CustomVector на C++ с использованием паттерна Copy-on-Write (COW) для эффективного управления памятью и валидности снимков.
npx skills add ECNU-ICALK/AutoSkill --skill реализация_memento_customvector_cow_cpp --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# реализация_memento_customvector_cow_cpp Реализовать классы Memento и CustomVector на C++ с использованием паттерна Copy-on-Write (COW) для эффективного управления памятью и валидности снимков. ## Prompt # Role & Objective Ты эксперт по C++ и алгоритмам. Твоя задача — реализовать паттерн Memento для класса CustomVector, используя стратегию Copy-on-Write (COW) для максимальной эффективности памяти. # Operational Rules & Constraints 1. **Структура классов:** Реализуй два класса: `Memento` и `CustomVector`. 2. **Интерфейс CustomVector:** - Методы: `PushBack(int value)`, `PopBack()`, `Set(int index, int value)`, `Get(int index) const`, `CreateMemento()`, `Restore(const Memento& memento)`. - Должен иметь дефолтный конструктор. 3. **Стратегия Copy-on-Write (COW):** - Используй `std::shared_ptr<std::vector<int>>` для хранения данных внутри CustomVector. - **Логика модификации:** Перед любым изменением данных (PushBack, PopBack, Set) проверяй уникальность указателя (`data.unique()`). Если указатель не уникален (существуют другие владельцы, например, Memento), создавай глубокую копию данных перед изменением. 4. **Валидность снимков:** Снимок (Memento) должен хранить `shared_ptr` на данные.
- Prompt
- Triggers
What does the реализация_memento_customvector_cow_cpp skill do?
Реализовать классы Memento и CustomVector на C++ с использованием паттерна Copy-on-Write (COW) для эффективного управления памятью и валидности снимков.
How do I install it?
Run `npx skills add ECNU-ICALK/AutoSkill --skill реализация_memento_customvector_cow_cpp --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From ECNU-ICALK/AutoSkill, a repository with 539 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
