Przejdź do treści
Biblioteka skilli
Programowanie · Budowanie i kod

cpp-modern-cpp20-raii

/cpp-modern-cpp20-raii

Pisze nowoczesny kod C++20 z koncepcjami, inteligentnymi wskaźnikami i idiomem RAII, z użyciem std::span, by uniknąć wycieków pamięci.

Licencja
MIT
Ostatnia zmiana repozytorium
28.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 28.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Pisze nowoczesny kod C++20 z koncepcjami, inteligentnymi wskaźnikami i idiomem RAII, z użyciem std::span, by uniknąć wycieków pamięci.

Oryginalny opis (EN)

Use this skill when writing modern C++20 software using concepts, smart pointers, RAII idioms, and std::span for zero leaks.

Jak działa

  1. When to use
  2. Prerequisites
  3. Step-by-step workflow
  4. Commands / code examples
  5. Common mistakes & pitfalls
  6. Verification checklist
  7. Related skills
Sekcje z nagłówków SKILL.md, w oryginale · 61 linii, 288 słów
Podgląd SKILL.md
---
name: cpp-modern-cpp20-raii
description: Use this skill when writing modern C++20 software using concepts, smart pointers, RAII idioms, and std::span for zero leaks.
---
# C++ Modern C++20 & RAII Resource Management

## When to use
Use this skill when you need to writing modern C++20 software using concepts, smart pointers, RAII idioms, and std::span for zero leaks.

## Prerequisites
- Working knowledge of relevant programming language or database fundamentals.
- Access to testing environment or local runtime instance.

## Step-by-step workflow
1. **Analyze operational requirements**: Review performance boundaries, data integrity constraints, and query patterns.
2. **Design schema / interface**: Define explicit data contracts, types, or indexes supporting planned operations.
3. **Implement core routines**: Construct declarative, type-safe, or parameterized queries and functions.
4. **Validate performance**: Verify execution metrics using profilers, EXPLAIN plans, or benchmark test suites.
5. **Implement defensive controls**: Enforce timeout boundaries, connection pooling limits, and transaction safety.

## Commands / code examples
```cpp
#include <iostream>
#include <memory>
#include <span>
#include <concepts>

template <typename T>
concept Numeric = std::integral<T> || std::floating_point<T>;

template <Numeric T>
T calculate_sum(std::span<const T> values) {
    T total = 0;
    for (const auto& v : values) {
        total += v;
    }
    return total;
}

class ResourceManager {
    std::unique_ptr<int[]> buffer;
    size_t size;
public:
    explicit ResourceManager(size_t count)
        : buffer(std::make_unique<int[]>(count)), size(count) {}
};
```

## Common mistakes & pitfalls
- Overlooking indexing strategies on foreign keys and frequently queried filter columns.
- Running unparameterized dynamic queries, creating severe SQL injection vulnerabilities.
- Holding open long-running database transactions during slow external network calls.

## Verification checklist
- [ ] Schema contracts and type signatures are strictly enforced.
- [ ] Queries are fully parameterized against injection vulnerabilities.
- [ ] Profiling or execution plans show optimal resource consumption.
- [ ] Error handling safely releases locks and rolls back aborted transactions.

## Related skills
- postgresql-query-optimization-explain
- sql-anti-patterns-remediation
- acid-transactions-isolation-levels
- secure-code-review-static-analysis-sast

Wersje

W bazie nie ma innych skilli o nazwie cpp-modern-cpp20-raii.

Migawka bazy z 13.11.2026 · wersja paczki 2c3319484c4c (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 95cpp
    Opisuje nowoczesny C++ (C++17, 20, 23): RAII, semantykę przenoszenia, inteligentne wskaźniki, szablony, concepts, ranges, coroutines, moduły, std::expected, std::format i std::span.
  • 100cpp-idioms
    Podaje idiomy nowoczesnego C++ (17/20/23): RAII, inteligentne wskaźniki, semantyka wartości, Rule of Zero i Five, koncepty i obsługa błędów przez std::expected, przy pisaniu, refaktoryzacji i przeglądzie.
  • 95lang-cpp
    Pisze i przegląda nowoczesny C++ w standardach C++17, C++20 i C++23: RAII, inteligentne wskaźniki, semantykę przenoszenia i CMake.
  • 91cpp-smart-pointers
    Wspiera bezpieczne zarządzanie pamięcią w C++ przez unique_ptr, shared_ptr, weak_ptr i wzorce RAII.
  • 90cpp-pro
    Pisze idiomatyczny kod C++ z nowoczesnymi funkcjami, RAII, inteligentnymi wskaźnikami i algorytmami STL, także przy refaktoryzacji.
  • 95cpp-smart-pointers
    Opisuje inteligentne wskaźniki C++ (unique_ptr, shared_ptr, weak_ptr) do automatycznego zarządzania pamięcią zgodnie z RAII.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.