當前位置:
首頁 > 最新 > C+環境下調用銳視開源測控軟體

C+環境下調用銳視開源測控軟體

前言

C++是C語言的繼承,它既可以進行C語言的過程化程序設計,又可以進行以抽象數據類型為特點的基於對象的程序設計,還可以進行以繼承和多態為特點的面向對象的程序設計。因此C++也可以稱之為面向對象的程序設計。

C++編寫的程序為非託管代碼,C#編寫的程序為託管代碼。而CLR(Common Language Runtime)卻提供了一些機制,允許C++和C#之間互相調用。

簡儀科技提出的銳視開源測控軟體,也是基於C#來開發的,因此在C++中完全可以直接調用。

C++調用銳視驅動軟體

下面以簡儀科技USB61902為例,介紹如何在C++環境下調用銳視驅動。

1) 打開VS2015新建項目(其他語言-Visual C++)選擇Win32控制台應用程序,設置工程名JYUSB61902Demo,如下圖:

2) 單擊確定,出現對話框後出現下一步,如下圖:

3) 單擊下一步,出現對話框,選擇完成。如下圖:

4) 新建工程完成後,出現源代碼編輯界面,如下圖:

5) 修改工程屬性,在(配置屬性-常規-公共語言運行時支持)中選擇「公共語言運行時支持(/clr)」選項,如下圖:

6) 在源代碼中使用#using語句引用JYUSB61902.dll

7) 在源代碼中使用using引用命名控制項

8) 在源代碼中調用JYUSB61902AITask編程,源代碼如下圖:

9) 編譯成功,運行。

10)運行時彈出錯誤,如下圖:

11) 需要將JYUSB61902.dll複製到C++工程的可執行程序目錄下。再次運行成功。

總結C++ 和C# 語法區別:

通過上圖編寫的C++代碼可以看出,在C++中調用C#庫文件時,有一些語法上的區別需要注意:

不能通過#include來引用庫文件,而是通過#using「文件目錄庫文件.dll」來引用;

通過 「using namespace 命名空間」來導入命名空間。

對象需要使用gcnew方法創建,創建後的對象需要使用」^」修飾,例如JYUSB61902AITask ^aiTask = gcnew JYUSB61902AITask(0);

對象中的屬性、方法需要通過符號「->」來索引,而不是通過符號「.」,如aitask->SampleRate;

命名空間中的枚舉需要通過符號「::」來索引,如JYUSB61902::AIMode::Finite;

數組的創建需要使用gcnew的方式創建,不能使用C++的數組類型。例如:一維array ^data = gcnew array(1000) {}; 二維array^ data = gcnew array(1000,2){};

在C#中用out和ref欄位修飾的入參可以直接聲明變數使用,這些變數在執行後的值會被反寫。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 簡儀科技 的精彩文章:

TAG:簡儀科技 |