问题列表 - 第33650页

在Release - Compiler/clr bug中没有初始化静态成员变量?

预期的输出和输出我进入调试模式,并在VS2010,.NET 4.0下发布模式:

bar construct
main
Run Code Online (Sandbox Code Playgroud)

输出在释放模式没有在VS2010的调试器,并且在WinDbg的:

main
Run Code Online (Sandbox Code Playgroud)

程序在VS2005,.NET 2.0上不会出现此行为

using System;

namespace static_init
{
    public class bar
    {
        public bar()
        {
            Console.WriteLine("bar construct");
        }
    }

    class Program
    {
        public static bar blah = new bar();

        static void Main(string[] args)
        {
            Console.WriteLine("main");
            Console.ReadLine();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

可能相关: 静态构造函数可以在非静态构造函数之后运行.这是编译器错误吗?

更新

在我的实际代码构造bar()函数中使用C++(非托管)初始化一些互操作代码.它需要在此库中的任何其他内容之前发生 - 是否有任何方法可以确保在没有放入init()触及库中所有静态(具有未外部引用的副作用)的函数的情况下?

未来搜索者的注意事项:我正在使用SWIG,这是他们在包装器生成代码中做出的假设. SWIGStringHelper是目前的罪犯,可能会有更多.

结论

更新到SWIG的2.0版本,它根据新版.NET的需要放入静态构造函数.

c# clr .net-4.0

6
推荐指数
2
解决办法
3332
查看次数

如何使用函数或正则表达式从单元格中删除所有数字?

我的单元格看起来像这样,每行一个:

Duffy,约翰:'遗产:文明和犹太人' - 夸耀与合唱,交响舞蹈+管弦乐套房.伯恩斯坦,'在城里'舞蹈剧集.皇家菲尔/威廉姆斯

Lilien,Ignace 1897-1963:歌曲,1920-1935.钢琴,Anja van Wijk,mezzo和Frans van Ruth

欣德米特,Trauermusik.Purcell,'Fairy Queen'套房.罗西尼,弦乐奏鸣曲6.彼得罗夫,'创造世界'芭蕾舞套房.Bartok,Romanian Folkdances Sz 56. Tartini,长笛协奏曲G WAMaiorov Leningrad Orch.for古代与现代音乐/ Serov

Bizet,Verdi,Massenet,Puccini:来自Carmen的Arias,Rigoletto,Werther,Manon Lescaut,Tosca,Turandot + Lara的歌曲,Di Capua等.Peter Dvorsky,男高音w.Bratislava Orch./Lenard还表演'Carmen'Overt.&'Thais'Meditation.Rec.Live,八十七分之一十

Fantini,Rauch,C.Straus,Priuli,Bertali:'维也纳皇宫的节日弥撒,1648'约克郡巴赫合唱团和巴洛克独奏家+伦敦巴洛克黄铜/西摩

Vinci,Leonardo1690-1730:来自Semiramide Riconosciuta的咏叹调,Didone Abbandonata,La Caduta dei Decemviri,Lo Cecato Fauzo,La Festa de Bacco,Catone in Utica.Maria Angeles Peters sop.wMCarraro指挥

格鲁克,莫扎特,贝多芬,韦伯,威尔第,瓦格纳,庞奇利,马斯卡尼,普契尼:来自Alceste的Arias,Don Giovanni,Fidelio,Oberon,Ballo,Tristan,Walkure,Siegfried,Gotterdammerung,Gioconda,Cavalleria,Tosca.Helene Wildbrunn.Rec.1919-24

我想删除所有号码.我如何用公式做到这一点?或者只是搜索和替换正则表达式?

regex excel worksheet-function

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

如何检查Perl编译是否已经完成?

我有一些代码要求应用程序在执行之前完全加载和编译.

有没有办法检查我的Perl程序是否仍处于编译阶段?

我有一些有用的东西,但必须有一个更好的方法:

sub check_compile {
  printf("checking\n");
  foreach my $depth (0..10) {
    my ($package, $filename, $line, $subroutine) = caller($depth);
    last unless (defined($package));

    printf("  %s %s %s %s %s\n", $depth, $package, $filename, $line, $subroutine);

    if ($subroutine =~ /::BEGIN$/) {
      printf("in compile\n");
      return 1;
    }

  }

  printf("not in compile\n");
  return 0;
}


BEGIN {
  check_compile();
}

use subpkg;

check_compile();
Run Code Online (Sandbox Code Playgroud)

和subpkg.pm包含:

package subpkg;

use strict;
use warnings;

printf("initing subpkg\n");
main::check_compile();

1; # successfully loaded
Run Code Online (Sandbox Code Playgroud)

perl

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

使用适用于iPhone的BSD许可证库(使用GPL库)

在查看各种许可证的细节时我感到很困惑,并且想知道是否有人可以帮助我.基本上,我正在寻找一个简单的SSH客户端在应用商店上发布.应用程序商店中的所有其他SSH客户端都会收费,虽然我确信它们会比我做的更好,但我想添加一个免费选项.目前我只是将其开发用于个人用途或在我工作的公司内部,我意识到这意味着我不需要担心GPL不兼容性,但我认为我最好将其设置为工作如何我首先想要的是,而不是在后期围绕不同的核心进行重建.

我的想法是使用预先构建的SSH库,但这个想法似乎充满了法律问题.

  • 然而,libssh是在lgpl下发布的,我不想进入iPhone开发和GPL的合法混乱......我听说它们在很大程度上是不兼容的,如果可能的话,我宁愿避免任何合法的雷区.
  • libssh2是在BSD许可下发布的,AFAIK可以与iPhone devisisence一起使用.我觉得很完美.因为我正在查看 为iphone编译libssh2的一些说明,但是,我注意到它使用了GnuPG中的3个库,这些库是在(L)GPL下发布的...这是否意味着使用libssh2导致我进入同一个合法的雷区libssh?有没有办法将这些库用于非GPL等价物?
  • 是否有可在iPhone兼容许可下使用的备用SSH库?

iphone bsd licensing gpl

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

如何编写Web框架作为学习体验

我想写自己的(玩具?)网络框架作为学习经验.我想从头开始完成整个过程.我希望它能通过Linux上的Apache提供服务.我正在寻找理解使用Web框架时所发生事情的每一步的最佳途径.我想用最好的语言来促进这个过程.对我来说,最好的方法是什么?"最好的"我的意思是"对现代Web框架中发生的所有事情有最深刻的理解".

frameworks

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

有没有办法防止在浏览器中单独查看AJAX页面?

例如,当我想用​​AJAX更新我的页面的一部分时,我通常会对getPost.php进行适当的调用,这将返回要插入到我的页面中的标记.有没有办法阻止用户直接访问此页面(例如:带有适当的GET或POST参数的example.com/getPost.php)并且只获取页面的一部分,因为这应该与AJAX一起使用作为整体的一部分, 不是一个人?

我不认为可以在文件上设置权限,因为它是客户端请求页面,但有一种方法可以通过传递一个额外的参数来做到这一点,该参数可以作为排序的校验位.

php security ajax

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

关于返回表达式

级别:初学者

以下代码将打印'False'

def function(x):
    if len(x) == 5: return True
    else: return x[0] == x[-1]

print function('annb')
Run Code Online (Sandbox Code Playgroud)

为什么行"else:return x [0] == x [-1]"print False?我确实理解发生了什么,但我很难将其变成简单的英语......这种行为怎么能被描述?

这是一种常用/常用的"技术"吗?

在尝试解决回文运动recursivley时,我首先遇到了这种特殊的语法.似乎使递归工作的唯一方法是使用这种速记方法:

def isPalindrome(s):
 if len(s) <= 1: return True
 else: return s[0] == s[-1] and isPalindrome(s[1:-1])

print isPalindrome('anna')
Run Code Online (Sandbox Code Playgroud)

谢谢巴巴

python return semantics

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

在 LaTeX 中覆盖小节标题的背景颜色

这里是 LaTeX 新手。

我需要为所有\subsection标题设置背景颜色。整行应该改变颜色,而不仅仅是带有文本的部分。

这确实有效:

\subsection{\colorbox{Gray}{Title}}
Run Code Online (Sandbox Code Playgroud)

但它不会使整条线着色。另外我想在一个地方为所有人配置它\subsections

我的 google-fu 让我失望了。关于如何做我想做的事有什么建议吗?

latex pdflatex

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

使用大量数据填充DataGridView的最佳方法

我有一个Windows窗体,有两个DataGridViews(DGV),每个将包含25,000多条记录和21列.我已经使用DataAdapter成功地从数据库加载了数据,然后我尝试使用for循环填充DGV.每种方法花费的时间大致相同.第一次将数据填入DGV时需要太长时间(7分钟以上),然后随后的时间更合理(~30秒).所以我的问题是,用平均<= 1分钟的大量数据加载DGV的最佳方法是什么?我非常喜欢DGV的功能,但是如果推动推动我愿意使用不同的技术,即使它意味着放弃一些功能.

c# datagridview

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

Javascript数组:获取'范围'的项目

在Javascript中是否有类似于ruby的数组[n..m]?

例如:

>> a = ['a','b','c','d','e','f','g']
>> a[0..2]
=> ['a','b','c']
Run Code Online (Sandbox Code Playgroud)

谢谢

javascript ruby arrays range

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