Tôi sử dụng boost::mpl::string<...>
các loại rộng rãi ... đủ để nó thực sự giúp gỡ lỗi để có các loại in đẹp trong gdb
.tăng cường in ấn :: mpl :: string <...> các loại trong gdb
... Vì vậy, thay vì gdb
cho thấy các thành phần như nó hiện đang làm cá nhân (multicharacter đen) ...
boost::mpl::string<1668248165, 778856802, 778858343, ..., ..., 0, 0, 0, 0, 0, 0>
Nó sẽ hiển thị giá trị chuỗi tương đương thay vì ...
boost::mpl::string<"The way out is through">
Tôi đã xem gdb
các macro và các tập lệnh python cho các hộp chứa STL khá trong gdb
, nhưng tôi không thể tìm thấy một cho các chuỗi boost::mpl
in đẹp. Bất cứ ai có thể giúp đỡ với điều này?
UPDATE: Tôi đã thêm một +100 tiền thưởng ... Tôi đang tìm kiếm một giải pháp mà sử dụng sự hỗ trợ mới nhất GDB cho khá-in qua trăn (như mô tả here cho STL container).
** Làm việc như một nét duyên dáng! ** Và bây giờ tôi có thể dễ dàng làm đẹp các kiểu chữ khác bằng python bằng cách sử dụng cùng phương pháp này. Cảm ơn bạn. – etherice
@etherice Vui lòng xuất bản máy in của bạn, một số ngày. –
Để làm rõ một vài phần trong hướng dẫn: 'printers.py' và' mpl_printers.py' nên đi vào thư mục con 'boost' (tức là'/usr/local/share/gdb/python/boost') để mô-đun tên trong 'register_printers.gdb' là hợp lệ. Ngoài ra, thư mục con 'boost' phải chứa một tập tin' __init __. Py' (có thể trống) để python nhận ra nó là một thư mục chứa các mô-đun (nếu không, bạn sẽ nhận được một lỗi 'ImportError: No module name boost.printers') . – etherice