2017-06-06 61 views
0

我會用事實,我不知道除了用別人的代碼修修補補兩種語言前言本。但我修改代碼向量化它,並有C++/CLI部計算出作爲這樣的結構: cli::array<double,2>^% vols 初始化這樣的: vols = gcnew cli::array<double, 2>(2,dealIDs->Length); 這樣所有編譯好,我必須用2x(dealsID的長度)的2D陣列在C++端。現在在.NET方面,我不確定正確的聲明。什麼是訪問我的2xN結構化C++/CLI數組的正確的.NET CS格式?非常感激。C++/CLI cli :: array <double,2>,如何從CS .NET訪問?

+0

看看https://docs.microsoft.com/en-us/cpp/dotnet/dotnet-programming-with-cpp-cli-visual-cpp。一種「訪問」數組的方法就是將其從C++/CLI中公開,然後C#就可以直接使用它。 –

+1

它只是一個簡單的'雙[,]'在C#端。當您發佈這個小小的repro代碼時,很難猜測IntelliSense彈出窗口如何幫助您陷入成功陷阱。 –

+0

[C#多維數組](https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/arrays/multidimensional-arrays)和[如何:使用陣列in C++/CLI(HTTPS: //docs.microsoft.com/en-us/cpp/dotnet/how-to-use-arrays-in-cpp-cli) –

回答

2
gcnew cli::array<double, 2>(2,dealIDs->Length); 

將是C#語法

new double[2, deals.Length] 

List<T>不是數組。

+0

謝謝@adjan這就是我在尋找。那麼在.NET中,正確的聲明是public static [] []變量還是'public double [,] variable'作爲@Hans Passant聲明? – Matt

+0

'公共雙[,] identifier' – Adrian

+0

我只想說明對於那些有'List'對網側工作格式而不是'.Length'是'.Count',即'MYVARIABLE =新的雙[2, dealIDs.Count]' – Matt

相關問題