C++ trên Maguyva: đồ thị lớp và lời gọi cho codebase lớn
C++ giấu đích thực sự của một lời gọi sau namespace, overload và virtual dispatch. Đồ thị giúp agent tìm ra nó.
Phần mở rộng
.c, .c++, .cc, .cpp, +6 nữa
Maguyva hỗ trợ C với AST, ký hiệu và đồ thị, để agent AI có thể lần theo hàm, struct, include và nơi gọi trong mã hệ thống, firmware và thư viện.
C không có lớp hay module để tổ chức mã. Cấu trúc nằm ở lời gọi hàm, header và struct, và cùng một cái tên có thể xuất hiện trong chú thích, macro và chuỗi ký tự. Macro export và annotation bao quanh khai báo, khiến các công cụ chỉ phân tích C thuần bị vấp. Với một agent, bước đầu tiên an toàn là đồ thị lời gọi.
Maguyva xây dựng đồ thị này, để agent thấy một hàm đi tới đâu và cái gì đi tới nó trước khi đề xuất thay đổi.
Maguyva bao phủ .c và .h. Định nghĩa hàm được trích xuất thành ký hiệu, và struct cùng union có thể được chọn làm định nghĩa kiểu trong tìm kiếm cấu trúc. Chỉ thị #include trở thành quan hệ nhập.
Macro export và visibility (các mẫu như FOO_API, DLLEXPORT hoặc LIBEXPORT) và macro annotation an toàn luồng (như GUARDED_BY và REQUIRES) được che trước khi phân tích, để các khai báo mà chúng bao quanh được phân tích như khai báo bình thường. Thân của macro dạng hàm được phân tích; thân của macro dạng đối tượng thì không.
Đồ thị ghi lại lời gọi, include, khởi tạo qua compound literal, tham chiếu kiểu, đọc và ghi, cùng luồng điều khiển. Khoảng 124 lời gọi thư viện chuẩn C (printf, malloc, free, memcpy, strlen và tương tự) bị lọc khỏi quan hệ, để mã của dự án nổi bật lên.
uart_write, trực tiếp hoặc qua các hàm khác?” (dependency_search theo chiều vào)config.h, và chúng dùng struct nào của nó?” (dependency_search, sau đó find_symbol)get_task_context).h xuất hiện trong danh sách phần mở rộng của C, C++ và Objective-C, nên header trong các cây mã đa ngôn ngữ được chia giữa các profile này.text_pattern_search khi bạn cần mọi malloc hoặc memcpy.Kết nối một kho mã bằng hướng dẫn bắt đầu nhanh, sau đó xem ma trận hỗ trợ trên trang tương thích. Với mã C++ trong cùng cây mã, hãy đọc hướng dẫn C++.
Phù hợp nhất
Workflow agent
Chi tiết engine
Điểm khởi đầu MCP hữu ích
Dùng với tên hàm hoặc struct khi bạn cần định nghĩa và mọi tham chiếu.
Dùng duyệt theo chiều vào trên một hàm dùng chung trước khi chữ ký hoặc cách xử lý lỗi của nó thay đổi.
Dùng cho các prompt như “giải thích cách một gói tin đi từ ngắt nhận tới bộ phân tích giao thức”.
Hướng dẫn liên quan
C++ giấu đích thực sự của một lời gọi sau namespace, overload và virtual dispatch. Đồ thị giúp agent tìm ra nó.
Phần mở rộng
.c, .c++, .cc, .cpp, +6 nữa
Liên quan khi bạn muốn có sự hỗ trợ AI trong Rust mà không đánh mất các rào chắn cấu trúc khiến Rust đáng để sử dụng.
Phần mở rộng
.rs