使用Assembly來開發c 程式

2021-06-02 12:22:24 字數 1362 閱讀 7123

什麼是assembly(程式集)?

assembly是乙個包含來程式的名稱,版本號,自我描述,檔案關聯關係和檔案位置等資訊的乙個集合。在.net框架中通過assembly類來支援,該類位於system.reflection下,物理位置位於:mscorlib.dll。

assembly能幹什麼?

我們可以通過assembly的資訊來獲取程式的類,例項等程式設計需要用到的資訊。

乙個簡單的演示例項:

1.建立乙個console工程名為:namespaceref

2.寫入如下**:

1using system;

2using system.collections.generic;

3using system.text;

4using system.reflection;

5 6namespace namespaceref

721 }

2223 class country

24

2728 class chinese : country

29

34 }

3536 class america : country

37

42 }

43}

由於assembly的存在給我們在實現設計模式上有了乙個更好的選擇。

我們在開發的時候有時候會遇到這樣的乙個問題,根據對應的名稱來建立指定的物件。如:給出chinese就要建立乙個chinese物件,以前我們只能這樣來寫**:

1if (strongclassname == "china")

2 cy = new china();

3else if (strongclassname == "america")

4 cy = new america();

那麼如果我們有很長的一系列物件要建立,這樣的**維護起來是很困難的,而且也不容易閱讀。現在我們可以通過在外部檔案定義類的程式集名稱和類的強名稱來獲得這樣乙個例項,即易於理解,又增強了擴充套件性還不用修改**。

cy = (country)assembly.load(assemblyname).createinstance(strongclassname);

結論

assembly類有很多的方法和屬性,它和type一樣有很多功能用於名稱與方法和屬性之間的轉化。深入理解這兩個類,你就可以清晰通用語言層是如何工作。

將想法付諸於實踐,藉此來影響他人是乙個人存在的真正價值

使用Assembly來開發C 程式

什麼是assembly 程式集 assembly是乙個包含程式的名稱,版本號,自我描述,檔案關聯關係和檔案位置等資訊的乙個集合。在.net 框架中通過assembly類來支援,該類位於system。reflection下,物理位置位於mscorlib.dll。assembly能幹什麼?我們可以通過a...

C 在使用Assembly引導程式集時失敗

錯誤現象 進行外掛程式讀取時出現錯誤 嘗試從乙個網路位置引導程式集,在早期版本的 net framework 中,這會導致對該程式集進行沙盒處理。此發行版的 net framework 預設情況下不啟用 cas 策略,因此,此載入可能會很危險。如果此載入不是要對程式集進行沙盒處理,請啟用 loadf...

使用 flask restful 來開發API

在雙十一買了阿里云云小蜜的培訓課程,花了幾天學了一下,不過考了兩次都沒有考過,但是能夠熟練使用雲小蜜來搭建業務了,為了整合一些外部資料,例如天氣,交通,電影啥的,需要封裝處理一下第三方api或者呼叫自己的資料庫。最後的需求就是變成restful api了,可以把這個請求位址直接放到雲小蜜裡邊。res...