cuốn sách gpt4 ai đã làm

Những cạm bẫy khi có hai dll chia sẻ một thư viện tĩnh là gì?

In lại Tác giả: Hồ Xil Thời gian cập nhật: 2023-11-01 11:00:01 26 4
mua khóa gpt4 Nike

Giả sử bạn có hai dll

Dll A và Dll B

Tất cả chúng đều được liên kết tĩnh với các thư viện tĩnh (tức là các tệp .lib). Chúng tôi gọi thư viện này là L.

Tôi biết rằng L được liên kết hoàn toàn với A và B, tạo ra LA và LB tương ứng một cách hiệu quả. Nhưng điều gì xảy ra khi đối tượng O từ LA được truyền từ A đến B? Tôi giả sử mã được thực thi ở A LA và B LB vì đó là cách liên kết xảy ra. Nếu bạn tạo O ở A, gỡ cài đặt A, rồi dùng O ở B thì điều tồi tệ gì sẽ xảy ra?

câu trả lời hay nhất

Thư viện tĩnh chỉ là một tập hợp các tệp đối tượng. Khi bạn liên kết với một thư viện tĩnh, mọi thứ diễn ra như thể mã của thư viện tĩnh đã được đưa vào mã của bạn.

Vì vậy, nếu có các biến toàn cục trong một thư viện tĩnh, mỗi DLL sẽ có bản sao riêng của nó, bản sao này có thể đúng hoặc không như bạn muốn.

Về c++ - những cạm bẫy khi có hai dll chia sẻ một thư viện tĩnh là gì? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/7340628/

26 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress