草庐IT

product_array

全部标签

c# - 对类实例而不是 float 进行排序时 Array.Sort() 性能下降

如果对float进行排序,C#中的Array.Sort非常快,我需要一些额外的数据来处理这些float,所以我创建了一个简单的类并扩展了IComparable接口(interface)。现在Array.Sort突然慢了3-4倍,这是为什么?我该如何提高性能?演示代码:usingSystem;usingSystem.Diagnostics;usingSystem.Linq;namespaceSortTest{classProgram{staticvoidMain(string[]args){intarraySize=10000;intloops=500;doublenormalFloat

c# - byte[] array to struct with variable length 数组

我正在从套接字接收一个字节数组,字节的结构只是一个固定宽度字符串的大字符数组。在某些情况下,最后一个字段是动态的(而不是固定长度),我正在尝试将字节编码为结构。我读过可变长度的char数组需要是IntPtr,但我还没有弄清楚如何用剩余的字节对其进行编码。我还在一些文章中读到我可能需要第二个结构,但仍然无法弄清楚如何正确地编码它。这是一个这样的site在结构中处理可变长度字符数组的正确方法是什么?结构:[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi)]publicstructHeader{#regionprivatemem

c# - 从范围引用了类型为 'x' 的变量 'Product',但未定义

我在类库项目中有一个名为Product的类。我正在使用SubSonicSimpleRepository来保存对象。我在Product类中有如下方法:publicstaticIListLoad(Expression>expression){varrep=RepoHelper.GetRepo("ConStr");varproducts=rep.Find(expression);returnproducts.ToList();}我这样调用这个函数:privatevoidBindData(){varlist=Product.Load(x=>x.Active);//Activeisoftypeb

c# - 'Property:NETFRAMEWORK45' 部分中对符号 'Product:*' 的未解决引用

在TFS2010中构建应用程序时出现错误。未解决对“产品:*”部分中符号“属性:NETFRAMEWORK45”的引用。这是用于Wix3.9Wix包引用了NetFxExtension。我可以在我的本地机器上很好地构建wix,但是当我通过TFS构建它时,我得到了错误。谁能帮我解决这个问题?我有以下导致错误的代码。 最佳答案 您必须在您的项目中包含WixNetFxExtension,最多3个位置在wxs文件的Wix元素中,添加命名空间xmlns:netfx="http://schemas.microsoft.com/wix/NetFxEx

c# - 将文件夹名称与 Productivity Power Tools 颜色编码相匹配的正则表达式

我想配置RexEx以匹配任何打开文件的文件路径的任何文件夹(父文件夹或子文件夹)。因此,如果文件路径中的任何文件夹包含打开文件的名称,则选项卡的颜色编码将根据RegEx匹配设置。例如:websiteRoot/Content/MyName1/site.css=文件打开时的绿色标签websiteRoot/Content/MyName2/site.css=文件打开时的橙色标签websiste/Shared/MasterPages/MyName1/main.master=文件打开时的绿色标签websiste/Shared/MasterPages/MyName2/main.master=文件打开

c# - 简单的linq问题: using linq to get an array of properties

假设我们有一个简单的类publicclassFoo{publicstringFooName;}现在我们想对其做一些简单的工作。publicvoidSomeCallerMethod(ListlistOfFoos){string[]fooNames=listOfFoo.//Whattodohere?}如果我什至知道调用什么方法,我可能就能找到其余的部分。 最佳答案 您想将您的类列表转换为字符串数组。理想的方法是Select,它对可枚举对象的每个元素进行操作,并根据您返回的类型构建一个新的可枚举对象。您需要将lambda表达式放入返回名称

c# - System.Array 背后的 secret

我们知道System.Array是一个抽象类,不管DataType[]我们使用运行时以某种方式为我们创建了一些具体的实现(尽管很模糊)。考虑以下代码段。int[]someInts={1,2,3,4};IListcollection=someInts;collection.Clear();collection.Clear()抛出NotSupportedException,那里没有什么奇怪的。当我查看“StackTrace”时,我惊讶地发现它显示了一些奇怪的“类型”SZArrayHelper在调用堆栈的顶部。堆栈跟踪:atSystem.SZArrayHelper.Clear[T]()//N

c# - 为什么 C# Array.BinarySearch 这么快?

我在C#中实现了一个非常简单的binarySearch实现,用于在整数数组中查找整数:二分查找staticintbinarySearch(int[]arr,inti){intlow=0,high=arr.Length-1,mid;while(lowarr[mid])low=mid+1;elsereturnmid;}return-1;}将它与C#的原生Array.BinarySearch()进行比较时,我可以看到Array.BinarySearch()快两倍以上作为我的功能,每一次。MSDNArray.BinarySearch:Searchesanentireone-dimensiona

c# - C# : generate a list of two dimension arrays with the same shape 中的 FsCheck

假设我正在编写一些视频分析代码。这是视频类的简化版本:publicclassVideo{publicreadonlyintWidth;publicreadonlyintHeight;publicreadonlyListFrames;publicVideo(intwidth,intheight,IEnumerableframes){Width=width;Height=height;Frames=newList();foreach(varframeinframes){if(frame.GetLength(0)!=height||frame.GetLength(1)!=width){thr

C#:Array.CreateInstance:无法将类型 [*] 的对象转换为类型 []

我想通过调用在c#中创建一个非零下界一维数组Array.CreateInstance(typeof(int),newint[]{length},newint[]{lower});返回数组的类型不是int[],而是int[*]。谁能详细说明这是什么意思?我希望能够将这个数组返回给调用者,例如,int[]GetArray(){...}谢谢。 最佳答案 是的,这是一个陷阱!向量和一维数组之间存在差异。int[]是一个向量。向量(如int[])必须从0开始。否则,您必须将其命名为Array。例如://andyes,thisisdoingit