我使用庫來控制設備。這個庫是用C語言編寫的。該庫有一個全局變量來保存設備ID(端口號)。這個庫提供了一個函數來確定我們使用哪個端口。像類一樣隔離C庫(C++代碼)
initialize(int deviceIndex, int baudrate)
該函數改變全局變量。所有其他函數都使用這個全局變量。
我可以用這個庫控制一個設備;不過,我想同時控制兩個設備。
如果我使用這個函數兩次,全局變量改變了,我丟失了一個設備。
我用C++編寫我的代碼。我想知道是否有任何方法可以使用這個庫兩次,就像我們創建幾個對象的類,甚至每個類的公共變量都是獨立的。
編輯:
- 有依賴於平臺的方式。你在哪個平臺上?
我應該在這兩個的Visual C寫的代碼++(Windows)和Qt的C++(Linux的Kubuntu的)
- 可以更改該庫的源代碼?
是的,我可以,但它是約2000線和4檔(二.C和兩個.h)中
有依賴於平臺的方式。你在哪個平臺上? – Dani
您接受哪種可能的解決方案?重寫這個庫是最簡單和可靠的變體。 – fghj
你可以更改該庫的源代碼嗎? –