簡體   English   中英

構建沒有依賴關系的庫

[英]Building library without dependencies

我在這里有一個名為HugeApp的巨大應用程序,它需要不同的庫(我已經編碼),其中一些庫可能需要依賴項(來自互聯網的其他庫或此處開發的臨時庫)。

我想知道,從HugeApp隱藏其中一些依賴項是否可行和/或一個好主意。

假設您創建了一個庫來負責在系統上進行加密通信,頂級應用程序是否關心和/或需要知道系統的這一部分(通信)需要一些加密庫? 它可能是特定於實現的......或者不是......

謝謝

它不需要知道,如果您將這些庫構建為外部 DLL,那么外部庫是唯一關心依賴關系的東西。 如果您添加對預構建 DLL 的引用,那么 HugeApp 不需要了解庫的依賴關系(只要它們存在於庫中或存在適當的 DLL 或 lib 文件,以便您的 Z064131233FE5EC48CAFZ14利用它)。 如果您的庫可以完全是另一個項目,並且您可以包含對該項目的引用,那么在這種情況下,您的 HugeApp 的項目只關心該主要引用,而其他項目將處理其他所有內容。

如果您在 linker 優化中啟用 /OPT:REF,您將列出在鏈接期間沒有項目使用的函數或數據的庫(如果有)。 然后,您可以將它們從項目設置中的依賴項列表和鏈接行中刪除。 這將減少刪除 static 庫的機會,該庫是另一個 static 庫的依賴項(如果您的 VS 解決方案中存在/使用)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM