2016-02-13 54 views
0

我重寫一些代碼,想知道怎樣才能從C++將其轉換爲C#:轉換C++ istringstream使用到C#

istringstream vertexString = new istringstream(s); 

//number of vertices 
int numVertices; 
vertexString>>numVertices; 
+0

究竟是什麼's'? – CinCout

+0

s只是一些任意數據的字符串。 –

回答

1

一下添加到一個靜態字符串的工具類:

public static Stream ToStream(this string str) 
{ 
    MemoryStream stream = new MemoryStream(); 
    StreamWriter writer = new StreamWriter(stream); 
    writer.Write(str); 
    writer.Flush(); 
    stream.Position = 0; 
    return stream; 
} 

使用喜歡這個。 s必須是字符串。

int numVertices; 
using (var stringStream = s.ToStream()) 
{ 
    stringStream>>numVertices; 
} 
+0

所以我們的想法是將我自己的函數添加到String類中以模擬C++功能。我該如何去聲明實用程序類?我聽說過,但以前從未見過。這將是一種擴展方法嗎? –

+0

您可以製作返回Stream的常規函數​​。或者沒有功能和使用,但代碼不是美觀和有用的。你不要添加函數太多的String類。添加你的主類。 –