曾經開發過.Net的開發者會比較容易去理解一些修飾詞,.NET Framework 具有兩個主要元件:Common Language Runtime 和 .NET Framework 類別庫 (Class Library)
Common Language Runtime 負責執行期間程式碼的管理,提供核心服務,例如記憶體管理、執行緒管理和遠端處理,同時也強制使用嚴格的型別安全和其他程式碼格式的精確性,以確保安全性和強固性。類別庫則是綜合的、可重複使用的型別之物件導向集合,該型別可用於開發應用程式。
今天所實現的是透過System.dll去取得到Serial Port,工具是使用VS 2010
首先新增一個一般的C++專案,接著修改專案屬性
將組態改成所有組態,並點選到一般,將Common Language Runtime支援改成支援Common Language Runtime 支援(/clr)
#include <iostream> #using <System.dll> using namespace std; using namespace System; using namespace System::IO::Ports; void main() { for each (String^ name in SerialPort::GetPortNames()) { Console::WriteLine("{0}", name); } system("pause"); }結果
參考資料:
http://blogs.msdn.com/b/hsutter/archive/2003/11/23/53519.aspx
http://stackoverflow.com/questions/4684365/managed-c-ref-class
http://msdn.microsoft.com/zh-tw/library/xey702bw(v=vs.80).aspx
http://msdn.microsoft.com/zh-tw/library/b23b94s7(v=vs.80).aspx
http://msdn.microsoft.com/zh-tw/library/ms235289(v=vs.80).aspx
http://msdn.microsoft.com/zh-tw/library/ms384255(v=vs.71).aspx
http://en.wikipedia.org/wiki/Managed_Extensions_for_C%2B%2B
http://msdn.microsoft.com/zh-tw/library/8bs2ecf4.aspx
http://msdn.microsoft.com/zh-tw/library/system.io.ports.serialport.aspx?cs-save-lang=1&cs-lang=cpp#code-snippet-1
http://www.dotblogs.com.tw/billchung/archive/2012/01/04/64319.aspx