最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++下如何將TensorFlow模型封裝成DLL供C#調(diào)用

 更新時(shí)間:2022年11月09日 10:12:58   作者:jdkholmes  
這篇文章主要介紹了C++下如何將TensorFlow模型封裝成DLL供C#調(diào)用問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

生成dll

IDE使用visual studio 2015。

首先新建一個(gè)C++win32工程,選擇dll,包括導(dǎo)出符號(hào),但不要預(yù)編譯頭。

模板會(huì)提供一個(gè)工程同名的頭文件和一個(gè)源文件。

在源文件中將TensorFlow頭文件和其他需要使用的頭文件引用進(jìn)來。

在源文件中定義需要export的函數(shù)。

在頭文件中給出需導(dǎo)出函數(shù)的聲明。

extern 關(guān)鍵字后加“C”保證在C#調(diào)用時(shí)不生成中間函數(shù)名。

編譯環(huán)境選擇X64,配置好include、lib目錄以及附加依賴項(xiàng)文件,生成解決方案。

在輸出目錄會(huì)看見生成了dll文件。

使用C#調(diào)用dll

new project,創(chuàng)建一個(gè)C#控制臺(tái)程序進(jìn)行測(cè)試,將C#工程添加到當(dāng)前solution中,右鍵設(shè)為工程第一啟動(dòng)項(xiàng)。打開C#工程屬性,將build選項(xiàng)中的平臺(tái)設(shè)置為x64(很關(guān)鍵)

在C#的cs文件中首先include 頭文件system.runtime.interopservices。將dll工程的輸出目錄設(shè)置為C#的debug目錄,與EXE文件同級(jí)。

重新生成解決方案,此時(shí)生成的tfdll.dll會(huì)出現(xiàn)在C#的debug目錄下。

使用DllImport導(dǎo)入dll文件,如下圖所示代碼即可調(diào)用dll中的函數(shù)。

若出現(xiàn)badimage報(bào)錯(cuò),試圖加載不正確的dll,可能是由于位數(shù)選擇出錯(cuò),dll和C#沖突。

若出現(xiàn)找不到dll報(bào)錯(cuò),可能是由于未將此dll所需的依賴dll一同拷入debug文件夾下。

下圖中的TensorFlow的dll即是tfdll的依賴庫(kù)。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C語(yǔ)言形參和實(shí)參傳值和傳址詳解刨析

    C語(yǔ)言形參和實(shí)參傳值和傳址詳解刨析

    形參出現(xiàn)在函數(shù)定義中,在整個(gè)函數(shù)體內(nèi)都可以使用, 離開該函數(shù)則不能使用。實(shí)參出現(xiàn)在主調(diào)函數(shù)中,進(jìn)入被調(diào)函數(shù)后,實(shí)參變量也不能使用,形參和實(shí)參的功能是作數(shù)據(jù)傳送。發(fā)生函數(shù)調(diào)用時(shí), 主調(diào)函數(shù)把實(shí)參的值傳送給被調(diào)函數(shù)的形參從而實(shí)現(xiàn)主調(diào)函數(shù)向被調(diào)函數(shù)的數(shù)據(jù)傳送
    2021-11-11
  • VScode搭建C/C++開發(fā)環(huán)境的詳細(xì)過程

    VScode搭建C/C++開發(fā)環(huán)境的詳細(xì)過程

    最近迷上了vscode,小巧美觀,最主要的是全平臺(tái),但是vscode并不是ide,必須得自己配置環(huán)境,下面這篇文章主要給大家介紹了關(guān)于VScode搭建C/C++開發(fā)環(huán)境的詳細(xì)過程,需要的朋友可以參考下
    2023-06-06
  • 詳解Matlab實(shí)現(xiàn)動(dòng)態(tài)表白圖的繪制

    詳解Matlab實(shí)現(xiàn)動(dòng)態(tài)表白圖的繪制

    這篇文章主要利用Matlab實(shí)現(xiàn)繪制獨(dú)特的表白動(dòng)圖,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Matlab有一定的幫助,感興趣的小伙伴可以了解一下
    2022-05-05
  • C++如何獲取鼠標(biāo)點(diǎn)擊位置

    C++如何獲取鼠標(biāo)點(diǎn)擊位置

    這篇文章主要介紹了C++如何獲取鼠標(biāo)點(diǎn)擊位置問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 解決codeblocks致命錯(cuò)誤:openssl/aes.h:沒有這樣的文件或目錄問題

    解決codeblocks致命錯(cuò)誤:openssl/aes.h:沒有這樣的文件或目錄問題

    這篇文章主要介紹了解決codeblocks致命錯(cuò)誤:openssl/aes.h:沒有這樣的文件或目錄問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • 使用C++程序獲取新浪行情數(shù)據(jù)的方法

    使用C++程序獲取新浪行情數(shù)據(jù)的方法

    這篇文章介紹了在一定的周期范圍內(nèi)去抓取新浪中行情數(shù)據(jù),通過更新數(shù)據(jù)來緩解構(gòu)造模擬數(shù)據(jù)與真實(shí)數(shù)據(jù)差異性,感興趣的朋友可以了解一下
    2015-07-07
  • C++設(shè)計(jì)模式之備忘錄模式

    C++設(shè)計(jì)模式之備忘錄模式

    這篇文章主要介紹了C++設(shè)計(jì)模式之備忘錄模式,本文講解了什么是備忘錄模式、備忘錄模式的UML類圖、備忘錄模式的使用場(chǎng)合等內(nèi)容,需要的朋友可以參考下
    2014-10-10
  • VScode配置C++運(yùn)行環(huán)境的完整步驟

    VScode配置C++運(yùn)行環(huán)境的完整步驟

    這篇文章主要給大家介紹了關(guān)于VScode配置C++運(yùn)行環(huán)境的完整步驟,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • C++中測(cè)試程序運(yùn)行時(shí)間的幾種方法總結(jié)

    C++中測(cè)試程序運(yùn)行時(shí)間的幾種方法總結(jié)

    本文介紹了C++中測(cè)量程序運(yùn)行時(shí)間的幾種方法,包括使用GetTickCount()、clock()、Boost庫(kù)的timer類以及高精度時(shí)控函數(shù)QueryPerformanceFrequency和QueryPerformanceCounter,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-09-09
  • C++ 雙鏈表的基本操作(詳解)

    C++ 雙鏈表的基本操作(詳解)

    下面小編就為大家?guī)硪黄狢++ 雙鏈表的基本操作(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12

最新評(píng)論

噶尔县| 奉化市| 儋州市| 泗水县| 定南县| 获嘉县| 工布江达县| 镇赉县| 盖州市| 嘉黎县| 祁连县| 黑山县| 鹤岗市| 灌南县| 长顺县| 城固县| 高平市| 滦南县| 扬中市| 贵阳市| 达日县| 镇坪县| 天长市| 玉山县| 虎林市| 双鸭山市| 祁门县| 会东县| 乐昌市| 婺源县| 万载县| 茌平县| 兖州市| 白朗县| 天峨县| 长白| 忻城县| 潢川县| 桃江县| 女性| 张家界市|