Stroustrup đã nói chuyện năm ngoái về GSL của mình (Thư viện hỗ trợ hướng dẫn). Có một cài đặt bởi Micosoft tại https://github.com/Microsoft/GSL. Tôi đã có ấn tượng rằng GSL được cho là sẽ tư vấn về phong cách mã hóa tồi và đề xuất các cải tiến.Nguyên tắc C++ GSL là gì?
Để kết thúc này, tôi cài đặt GSL MSFT và tạo ra một C++ file:
#include <stdio.h>
#include <gsl.h>
int main()
{
int *i = new int;
puts("hello world");
}
và xây dựng nó bằng cách sử dụng Makefile:
msft : msft.cc
g++ -std=gnu++14 -I ../../src/GSL/include $^ -o [email protected]
.PHONY : clean
clean :
rm -f msft
Rõ ràng, có một sự rò rỉ tài nguyên trong các mã gây ra bởi "mới".
Vì vậy, bây giờ tôi đang bối rối.
- GSL thực sự phải "làm gì"?
- Tôi có thể lấy trình kiểm tra mã nguồn cảnh báo hướng dẫn không tuân thủ ở đâu? Stroustrup dường như ngụ ý rằng nó thực sự tồn tại như một công cụ, nhưng đó là trường hợp?
tốt, ít nhất là chúng trung thực .. "giả định nền tảng triển khai hỗ trợ C++ 14. Có giải pháp cụ thể để hỗ trợ MSVC 2013 và 2015." Để công bằng, sự hiểu biết của tôi là hỗ trợ C++ 11 họ phải hoàn toàn xây dựng lại toàn bộ trình biên dịch của họ ... nhưng đã 5 năm và họ vẫn còn những thiếu sót cơ bản. Biểu hiện sfinae? không được hỗ trợ. – xaxxon
Tôi không tin rằng điều này là phù hợp. Câu hỏi này đặt ra cách sử dụng GSL, một câu hỏi StackOverflow hoàn toàn tốt. Nó chỉ yêu cầu một đề xuất cho một công cụ đi qua, trong điểm bullet cuối cùng, có thể bị xóa một cách đáng kể. –