(轉貼)乙個C 動態編譯的小例子

2021-04-09 05:19:26 字數 1520 閱讀 5750

using

system;

using

system.codedom;

using

system.codedom.compiler;

using

system.reflection;

using

microsoft.csharp;

namespace

...,b = ,c = ;

", a, b, c);

string

expressions ="

(a + b) * 0.2 + c + (a - c * 0.1 )";

console.writeline(getvalue(statement,expressions).tostring());

}public

static

object

getvalue(

string

statement, 

string

expressions)

... "+

""+"

public object getvalue()"+

""+"

"+""

+"

} }"

;codesnippetcompileunit unit 

=new

codesnippetcompileunit(codesnippet);

icodecompiler compiler 

=new

csharpcodeprovider().createcompiler();

compilerparameters para 

=new

compilerparameters();

para.referencedassemblies.add(

"system.dll");

para.generateinmemory 

=true

;para.generateexecutable 

=false

;para.outputassembly ="

eval.dll";

assembly a** 

=compiler.compileassemblyfromdom(para, unit).compiledassembly;

type type 

=a**.gettype(

"snippetcompiler.eval");

methodinfo mi 

=type.getmethod(

"getvalue

", bindingflags.public 

|bindingflags.instance);

object

obj 

=a**.createinstance(

"snippetcompiler.eval");

return

mi.invoke(obj, 

null);}

}}

乙個動態陣列的例子C

c c 規定,陣列一旦定義後,它的長度就不能改變了 換句話說,陣列容量不能動態地增大或者減小。這樣的陣列稱為 靜態陣列 static array 靜態陣列有時候會給編碼 不便,我們可以通過自定義的 array 類來實現 動態陣列 dynamic array 所謂動態陣列,是指數組容量能夠在使用的過程...

文字的乙個小例子

自然語言文字預處理 導入庫 import pandas as pd import jieba 結巴分詞 from sklearn.feature extraction.text import tfidfvectorizer 基於tf idf的詞頻轉向量庫 分詞函式 def jieba cut str...

ViewPager的乙個小例子

早就聽說有這個viewpager控制項,專案要中使用的也多,viewpager也是更新到了viewpager2。但是我一直沒有使用過,現在記錄一下簡單的使用方法。它的使用和recycleview listview的使用大同小異。也需要介面卡和監聽事件。相信用過這些控制項的同學一定不陌生。上 acti...