cpp-pro
Write idiomatic C++ code with modern features, RAII, smart pointers, and STL algorithms. Handles templates, move semantics, and performance optimization. Use PROACTIVELY for C++ refactoring, memory safety, or complex C++ patterns.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Write idiomatic C++ code with modern features, RAII, smart pointers, and STL algorithms. Handles templates, move semantics, and performance optimization. Use PROACTIVELY for C++ refactoring, memory safety, or complex C++ patterns.
How to use
Aktywuj umiejętność cpp-pro w swoim agencie lub przepływie pracy, gdy pracujesz nad zadaniami związanymi z programowaniem w C++. Umiejętność działa najlepiej z modelami Opus i wymaga kontekstu dotyczącego celów, ograniczeń i wymaganych danych wejściowych.
Opisz swoje zadanie C++, wskazując konkretny problem: refaktoryzacja istniejącego kodu, implementacja nowego modułu, optymalizacja wydajności lub rozwiązanie problemu z bezpieczeństwem pamięci. Umiejętność automatycznie zastosuje odpowiednie praktyki z zakresu nowoczesnego C++.
Otrzymasz kod źródłowy napisany zgodnie z wytycznymi C++ Core Guidelines, wraz z plikami CMakeLists.txt zawierającymi właściwy standard C++. Kod będzie zawierać nagłówki z ochroną przed wielokrotnym włączeniem lub dyrektywą #pragma once.
Zażądaj testów jednostkowych, jeśli są potrzebne — umiejętność wygeneruje testy przy użyciu Google Test lub Catch2, wraz z konfiguracją AddressSanitizer i ThreadSanitizer. Pozwoli to zweryfikować poprawność i bezpieczeństwo wątków.
Dla zadań wymagających wysokiej wydajności poproś o benchmarki wydajności przy użyciu Google Benchmark. Umiejętność zaproponuje również profilowanie za pomocą narzędzi takich jak perf lub VTune, aby zidentyfikować wąskie gardła.
Jeśli pracujesz z szablonami lub zaawansowanymi wzorcami C++, umiejętność dostarczy jasną dokumentację interfejsów szablonów i wyjaśni decyzje projektowe związane z semantyką move, perfect forwarding i metaprogramowaniem.