Tôi đã thừa hưởng một codebase khá lớn, 90% C++ và tôi cần phải tăng tốc độ nhanh chóng. Có hàng trăm tệp .cc trong cấu trúc cây thư mục rộng.Kịch bản để chèn đăng nhập vào mọi chức năng trong một dự án?
Nó khá phức tạp và không có ghi nhật ký. Để tìm ra cách một số hệ thống con chính hoạt động, tôi muốn chèn một lời gọi hàm vào mọi hàm.
Ví dụ, cho một tập tin .cc đầy đủ những thứ như thế này:
void A::foo(int a, int b) {
// ...
}
void A::bar() {
// ...
}
void B::bleh(const string& in) {
// ...
}
Tôi muốn có được điều này:
void A::foo(int a, int b) {
LOG(debug) << "A::foo() called.";
// ...
}
void A::bar() {
LOG(debug) << "A::bar() called.";
// ...
}
void B::bleh(const string& in) {
LOG(debug) << "B::bleh() called.";
// ...
}
này có thể được thực hiện thông qua kịch bản python, CMD kịch bản, kịch bản vỏ nguồn, v.v. Nếu có một cách để làm cho VS làm điều đó, tuyệt vời. Dù có hiệu quả. Không cần phải xinh đẹp, tôi không kiểm tra bất kỳ điều gì trong số này.
Ngoài ra, nó không nhất thiết phải có mọi thứ. Ví dụ. các lớp lồng nhau, triển khai trong tệp tiêu đề, v.v.
Đây là một cách tiếp cận thú vị! +1.Tôi sẽ đặt cược rằng VS IDE làm một công việc tốt hơn để khám phá sự khởi đầu của các định nghĩa chức năng hơn là một regex được xây dựng bằng tay. Nhưng giả sử "CodeModel" giống như IntelliSense sử dụng, có một vài trường hợp nó vẫn sẽ bị nghẹt thở trong kinh nghiệm của tôi. –
Điều này khá tiện lợi. Tôi sẽ cho nó một viên đạn. –
Có cách nào để loại trừ các tệp tiêu đề (.h và .inl) không? Ngoài ra, có lẽ loại trừ các mẫu? –