Tool:Visual Studio 2015 Enterprise
OS:Windows 10
.NET Framework 4.6
在.NET Framework 4.5版新增一些不可變的集合物件,當集合中的內容不常變動,且想要以Thread Safe的方式操作集合時,便可以使用定義在 System.Collections.Immutable命名空間下的類別,例如ImmutableQueue(佇列)與ImmutableStack(堆疊)。
預設使用 Visual Studio建立的範本專案中,並不含這些類別的組件,因此你需要先利用Nuget工具下載它們。例如在Console專案中,使用Nuget下載System.Collections.Immutable套件:
以下是使用 ImmutableQueue範例:
using System;
using System.Linq;
using System.Collections.Immutable;
namespace ConsoleApplication2 {
class Program {
static void Main( string [ ] args ) {
ImmutableQueue<int> q = ImmutableQueue<int>.Empty;
q = q.Enqueue( 100 );
q = q.Enqueue( 200 );
q = q.Enqueue( 300 );
while ( q.Count( ) > 0 ) {
int item;
q = q.Dequeue( out item );
Console.WriteLine( item );
}
}
}
}
using System;
using System.Linq;
using System.Collections.Immutable;
namespace ConsoleApplication2 {
class Program {
static void Main( string [ ] args ) {
ImmutableStack<int> stack = ImmutableStack<int>.Empty;
stack = stack.Push( 100 );
stack = stack.Push( 200 );
stack = stack.Push( 300 );
while ( stack.Count( ) > 0 ) {
int item;
stack = stack.Pop( out item );
Console.WriteLine( item );
}
}
}
}
沒有留言:
張貼留言