问题列表 - 第11670页

为什么TEnumerable <T>使用传递方法?

TEnumerable<T>,所有Generics.Collections容器类的基类都有一个非常奇怪的声明.它看起来像这样:

type
  TEnumerable<T> = class abstract
  protected
    function DoGetEnumerator: TEnumerator<T>; virtual; abstract;
  public
    function GetEnumerator: TEnumerator<T>;
  end;

function TEnumerable<T>.GetEnumerator: TEnumerator<T>;
begin
  Result := DoGetEnumerator;
end;
Run Code Online (Sandbox Code Playgroud)

TEnumerator<T> 同样声明一个公共的MoveNext方法和一个私有的DoMoveNext函数,而MoveNext除了调用DoMoveNext之外什么都不做.

除了添加额外的函数调用开销,使调用堆栈更长,并且在尝试从这些基类继承的编码器的头脑中产生混淆之外,任何人都可以向我解释这个服务的目的吗?这种结构化方式是否有任何实际优势,因为如果有,我看不到它......

delphi generics delphi-2009 data-structures

12
推荐指数
1
解决办法
1971
查看次数

实现自己的LINQ和IEnumerable <T>

在我正在开发的项目中,有很多巨大的集合(1M-1B元素),并且事物大部分被修改为集合.

它是一个实时应用程序,因此性能至关重要.

对于某些操作,如Reverse,BinarySearch(可能的?)等会比Select等更多的操作受到影响.

是否可以使用可能的MoveNext,MovePrev等实现自己的IEnumerable,并拥有利用这些优势的已实现的LINQ扩展?

如果发生这种情况,它将在项目结束时发生.因为我们需要先让它工作,然后加快速度.

总而言之,这不应该是太多的工作,对吧?

.net c# linq performance ienumerable

4
推荐指数
1
解决办法
6363
查看次数

加速Matlab到C++的转换

我有一些Matlab图像处理代码运行得非常慢,我准备将其转换为C/C++.我真的不太了解matlab如何工作以及如何执行代码,但我只是想知道我可能期望的加速速度.很明显,有许多变量会影响到这一点,但我只是想从你自己的经历中寻找指南.

谢谢

泽纳

c++ performance matlab image-processing

8
推荐指数
1
解决办法
5813
查看次数

如何让git log显示文件名,如svn log -v

SVN的日志有一个"-v"模式,输出每次提交中更改的文件的文件名,如下所示:

jes5199$ svn log -v
------------------------------------------------------------------------
r1 |   jes5199 | 2007-01-03 14:39:41 -0800 (Wed, 03 Jan 2007) | 1 line
Changed paths:
   A /AUTHORS
   A /COPYING
   A /ChangeLog
   A /EVOLUTION
   A /INSTALL
   A /MacOSX

有没有一种快速的方法来获取git中每个提交中的已更改文件列表?

svn git logging

925
推荐指数
11
解决办法
36万
查看次数

两个部分:Django书籍推荐+ Django现实世界的建议

第一个问题:您最喜欢的Django书或在线学习材料是什么?CodeProject示例+ Django文档,O'Reilly等.

第二个问题:你有什么好的提示和建议可以帮助你更有效地使用Django?某些设计模式,语言习语,与Django很好地结合的框架等.

谢谢!

python django

16
推荐指数
4
解决办法
2957
查看次数

从System.Drawing.Image在文件系统上创建一个新图像?

好的,对不起,这可能是一个noob问题,但我有点卡住了.

所以我正在做的(在我的asp.net应用程序上)是从文件系统加载图像:

System.Drawing.Image tempImage;
tempImage = System.Drawing.Image.FromFile(HttpContext.Server.MapPath(originalPath));
Run Code Online (Sandbox Code Playgroud)

然后我做了一些调整大小:

tempImage = my awesomeResizingFunction(tempImage, newSize);
Run Code Online (Sandbox Code Playgroud)

并打算使用以下方法将其保存到另一个位置的文件系统:

string newPath = "/myAwesomePath/newImageName.jpg";
tempImage.Save(newPath);
Run Code Online (Sandbox Code Playgroud)

而我得到的是这个错误:

"A generic error occurred in GDI+."
Run Code Online (Sandbox Code Playgroud)

我知道图像是"正常的",因为我可以将它写入浏览器并查看已调整大小的图像,我只是在尝试保存时才收到错误.我有点新手,我完全错了吗?(嗯,我猜这很明显,但你知道我的意思......)

c# asp.net gdi+ thumbnails image-resizing

3
推荐指数
2
解决办法
5万
查看次数

使用WPF的跨平台应用程序

我正在考虑用C#开发一个桌面应用程序.虽然windows将是我的主要目标,但稍后我将尝试在MacOS X和Linux中运行该应用程序.我今天能以简单的方式做到这一点吗?我知道单声道项目,但我不清楚我是否能以一种简单的方式做到这一点.

另外,WPF和Silverlight之间的关系是什么?AFAIK Silverlight遵循与Flash或Java非常相似的插件模型.我可以使用Silverlight开发我的桌面应用程序并将其部署在Windows,Linux和OS x上而无需进行太多更改吗?

任何指针将不胜感激.

c# wpf mono cross-platform

8
推荐指数
1
解决办法
6156
查看次数

从Rails应用程序破解CookieStore创建的cookie有多容易?

我已经阅读了一些内容,说在Rails应用程序中使用cookie存储的一个问题是客户端可以看到cookie数据.但是,我查看了cookie数据并加密了.解密cookie数据相对容易吗?

security ruby-on-rails cookiestore

1
推荐指数
1
解决办法
1418
查看次数

如何解析.as(AS3)文件

我希望尽可能接近将AS3文件解析为对象或XML.例如,想象下面的类:

package {
   class SomeClass extends AnotherClass {
      private var someVariable:Number

      public function someMethod(someParameter:Number = 4):void {
         var someLocalVariable:Number = someParameter * (2 + someVariable);
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

解析时,它可能是这样的:

<package name="">
   <class id="783" name="SomeClass" extendsId="782">
      <variable id="784" visibility="private" type="Number"/>
      <function id="785" name="someMethod" returnType="void">
         <parameter id="786" name="someParameter" type="Number">
            <expression>
               <number value="4"/>
            </expression>
         </parameter>
         <variable id="787" name="someLocalVariable" type="Number"/>
         <code>
            <assign toId="787">
               <expression>
                  <variable id="786"/>
                  <operator type="*"/>
                  <expression>
                     <number value="2"/>
                     <operator type="+"/>
                     <variable id="786"/>
                  </expression>
               </expression>
            </assign>
         </code>
      </function>
   </class>
</package>
Run Code Online (Sandbox Code Playgroud)

..即使我没有像这样得到一个漂亮,整洁的xml结构,即使它只是将AS3解析为某种容量,它也会超出我现在的范围.

有什么想法吗? …

parsing actionscript-3

2
推荐指数
1
解决办法
3436
查看次数

目标C - 哪种语法?

您认为哪种语法更好/更易读?

if(!myViewController.view.superview)
Run Code Online (Sandbox Code Playgroud)

要么:

if(myViewController.view.superview == nil)
Run Code Online (Sandbox Code Playgroud)

谢谢!!

syntax null boolean objective-c

3
推荐指数
2
解决办法
358
查看次数