问题列表 - 第23712页

当本机(C++)异常传播到CLR组件时,不会调用析构函数

我们有大量的本机C++代码,编译成DLL.

然后我们有几个包含C++/CLI代理代码的dll来包装C++接口.

最重要的是,我们有C#代码调用C++/CLI包装器.

标准的东西,到目前为止.

但是我们有很多情况允许将原生C++异常传播到.Net世界,并且我们依赖.Net将这些包装为System.Exception对象的能力,并且在大多数情况下这很好.

但是,我们发现当异常传播时,不会调用throw的范围内对象的析构函数!

经过一些研究,我们发现这是一个众所周知的问题.然而,解决方案/解决方案似乎不太一致.我们确实发现,如果使用/ EHa而不是/ EHsc编译本机代码,问题就会消失(至少在我们的测试用例中).但是我们更喜欢使用/ EHsc,因为我们自己将SEH异常翻译成C++异常,我们宁愿让编译器有更多的优化空间.

是否还有其他解决方法可以解决此问题 - 除了在(本机)try-catch-throw(除C++/CLI层之外)中包含跨本机管理边界的每个调用之外?

.net destructor c++-cli exception raii

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

java.io.IOException:服务器返回HTTP响应代码:503为URL:http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd

在以下代码中:

private Document transformDoc(Source source) throws TransformerException, IOException {
    TransformerFactory factory = TransformerFactory.newInstance();

    Transformer transformer =
            factory.newTransformer(new StreamSource(xsltResource.getInputStream()));
    JDOMResult result = new JDOMResult();
    transformer.transform(source, result);
    return result.getDocument();
}
Run Code Online (Sandbox Code Playgroud)

我得到这个例外:

java.io.IOException: Server returned HTTP response code: 503 for URL: http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
Run Code Online (Sandbox Code Playgroud)

我通过xsl翻译的XHTML是:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
  <title>Terms and Conditions</title>
</head>
<body>
  <div>Test Content</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

如何阻止xalan变压器打电话回家?

java xslt xhtml xalan

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

MySQL - 计算两个日期时间之间的净时差,同时排除中断?

在MySQL查询中,我使用timediff/time_to_sec函数来计算两个日期之间的总分钟数.

例如:

2010-03-23 10:00:00
-
2010-03-23 08:00:00
= 120 minutes
Run Code Online (Sandbox Code Playgroud)

我想要做的是排除在所选时间范围内发生的任何中断.

例如:

2010-03-23 10:00:00
-
2010-03-23 08:00:00
-
(break 08:55:00 to 09:10:00)
= 105 minutes
Run Code Online (Sandbox Code Playgroud)

有没有一种好方法可以在不使用一长串嵌套IF语句的情况下执行此操作?

UPDATE1:

澄清 - 我试图计算用户完成给定任务所需的时间.如果他们喝咖啡休息时间,则需要排除时间段.咖啡休息时间是固定的.

mysql sql time

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

Python:HTTP发布带有流媒体的大文件

我正在将可能很大的文件上传到Web服务器.目前我这样做:

import urllib2

f = open('somelargefile.zip','rb')
request = urllib2.Request(url,f.read())
request.add_header("Content-Type", "application/zip")
response = urllib2.urlopen(request)
Run Code Online (Sandbox Code Playgroud)

但是,这会在发布之前将整个文件的内容读入内存.我怎样才能将文件流式传输到服务器?

python http urllib2

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

如何实例化基类,然后将其转换为派生类?

我想知道如何做到这一点,考虑以下类

public class Fruit
{
    public string Name { get; set; }
    public Color Color { get; set; }
}
public class Apple : Fruit
{
    public Apple()
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

我如何实例化一个新的水果,但转发到苹果,有没有办法实例化一堆水果,并使他们苹果与名称和颜色设置.我需要手动深层复制吗?

当然这失败了

Fruit a = new Fruit();
a.Name = "FirstApple";
a.Color = Color.Red;
Apple wa = a as Apple;
System.Diagnostics.Debug.Print("Apple name: " + wa.Name);
Run Code Online (Sandbox Code Playgroud)

我是否需要将Fruit传递给AppleCTor并手动设置名称和颜色(或1-n属性)是否有更好的设计来执行此操作?

c# polymorphism casting

4
推荐指数
2
解决办法
2547
查看次数

何以当前语言(iPhone)从NSDateFormatter获取月/周日符号

特别是我对shortStandaloneWeekdaySymbols感兴趣.我正在使用此代码:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSArray *shortWeekdaySymbols = [dateFormatter shortStandaloneWeekdaySymbols];
Run Code Online (Sandbox Code Playgroud)

但是,如果iPhone区域格式设置为美国,但语言设置为法语/德语/任何其他格式,NSDateFormatter将返回英语字符串(mon tue ...).但我想尊重语言设置,并以当前语言获取工作日名称(标准时钟应用程序就是这样做的).这可能吗?

我能想到的唯一方法是获取当前用户语言(如何?)并将日期格式化程序上的语言环境设置为该语言的区域.

iphone localization region nsdateformatter

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

在/ reference选项中未指定extern别名'xxx'

我有两个程序集,不幸的是在同一名称空间中定义了相同的类型.我正在尝试使用a extern alias来解决问题.在Visual Studio IDE中,我已将引用的"别名"属性设置为我的别名.这应该是将C#编译器命令行更改为:

/reference:MyAlias=MyAssembly.dll
Run Code Online (Sandbox Code Playgroud)

但它实际上并没有这样做.Visual Studio IDE似乎只是忽略引用上的别名属性设置.因此,当我extern alias MyAlias;在C#代码文件的顶部添加行时,我得到错误,即在编译器的/ reference选项中未指定别名.我无法弄清楚我做错了什么.有任何想法吗?

.net c#

41
推荐指数
4
解决办法
2万
查看次数

我可以用枚举变量做什么?

当我声明这样的枚举变量时:

enum paint_colors { RED, GREEN, BLUE, ...} colors;
Run Code Online (Sandbox Code Playgroud)

colors可变的有用吗?如果是这样,我该怎么办呢?

提前致谢.

c variables enums typedef definition

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

将JavaScript中的大字符串与散列进行比较

我有一个带有textarea的表单,可以包含使用众多第三方富文本编辑器之一编辑的大量内容(例如,博客文章).我正在尝试实现类似自动保存功能的东西,如果它被更改,它应该通过ajax提交内容.但是,我必须解决这样一个事实:我作为选项的一些编辑器不支持"isdirty"标志,或者"onchange"事件,我可以用它来查看自上次保存以来内容是否已更改.

因此,作为一种解决方法,我想要做的是将内容的副本保存在变量中(让我们称之为lastSaveContent),从最后一次保存开始,并在"自动保存"功能触发时将其与当前文本进行比较(在计时器上)看它是否不同.但是,我担心可能会占用大量文档的内存量.

在lastSaveContent变量中存储某种散列而不是整个字符串,然后比较散列值会更有效吗?如果是这样,你能推荐一个好的javascript库/ jquery插件,为这个要求实现适当的哈希吗?

javascript string hash

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

C语言标准集合在哪里?

我现在已经致力于学习C,我很擅长使用Python/PHP/Bash,但是我已经决定我不能流利使用C.但是我无法想象用没有列表和哈希的语言工作,也许我是我只是跳枪,但肯定有'标准'收集库.我在GNU标准库中看不到任何建议,有什么建议吗?

c collections

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