问题列表 - 第23759页

当在某些非C++程序中使用C++代码时,C++运行时调用terminate()是"合法的"吗?

在某些情况下 - 特别是当一个异常在堆栈展开期间转义析构函数时 - C++运行时调用terminate()必须在事后做一些合理的事情然后退出程序.当出现"为什么如此苛刻"的问题时,答案通常是"在这种错误情况下没有更合理的事情".如果整个程序都是用C++编写的话,这听起来很合理.

现在如果C++代码在库中并且使用该库的程序不在C++中怎么办?这种情况经常发生 - 例如,我可能有.NET程序使用的本机C++ COM组件.一旦terminate()在组件代码中调用,.NET程序突然异常结束.程序作者首先会想到"我不关心C++,为什么这个库会让我的程序退出?"

在C++中开发库时,如何处理后一种情况?terminate()意外地结束该计划是否合理?有没有更好的方法来处理这种情况?

c++

7
推荐指数
2
解决办法
387
查看次数

如何在python中显示没有秒的区域设置敏感时间格式

我可以使用输出区域敏感时间格式strftime('%X'),但这总是包括秒.如何在没有秒的情况下显示此时间格式?

>>> import locale
>>> import datetime
>>> locale.setlocale(locale.LC_ALL, 'en_IE.utf-8')
'en_IE.utf-8'
>>> print datetime.datetime.now().strftime('%X')
12:22:43
>>> locale.setlocale(locale.LC_ALL, 'zh_TW.utf-8')
'zh_TW.utf-8'
>>> print datetime.datetime.now().strftime('%X')
12?22?58?
Run Code Online (Sandbox Code Playgroud)

我能想到这样做的唯一方法是尝试解析输出locale.nl_langinfo(locale.T_FMT)并删除秒位,但这带来了它自己的诡计.

>>> print locale.nl_langinfo(locale.T_FMT)
%H?%M?%S?
>>> locale.setlocale(locale.LC_ALL, 'en_IE.utf-8')
'en_IE.utf-8'
>>> print locale.nl_langinfo(locale.T_FMT)
%T
Run Code Online (Sandbox Code Playgroud)

解:

(根据pixelbeat的回答.)

# -*- coding: utf-8 -*-
import locale
def locale_time(t, show_seconds=False):
    if show_seconds:
        return t.strftime('%X')
    replacement_fmts = [
        (u'.%S', u''),
        (u':%S', u''),
        (u',%S', u''),
        (u':%OS', ''),
        (u'?????%S', u''),
        (u' %S?', u''),
        (u'%S?', u''),
        (u'%r', '%I:%M %p'),
        (u'%t', '%H:%M'),
        (u'%T', …
Run Code Online (Sandbox Code Playgroud)

python format time locale

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

如何将数据从视图传递到ASP.NET MVC中的UserControl?

假设我想做最简单的数据传递,如下所示:

<% For i = 0 To 10%>
    <%Html.RenderPartial("MyUserControl")%>
<% Next%>
Run Code Online (Sandbox Code Playgroud)

我想要做的是将变量i作为参数传递给UserControl,以便它显示一个数字,例如,有边框的div.

这怎么可能?

谢谢

c# vb.net asp.net-mvc user-controls viewusercontrol

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

JasperReports中的多个细节带

我想在我的jasper报告中显示多个细节部分.如何在JasperReports中添加多个细节带?有关详细信息,我将从我的java类传递集合.所以如果我有多个细节带如何将不同的集合传递给不同的细节带.

有人可以为此提供帮助

jasper-reports ireport

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

当我要求mysql时,为什么grails使用hsqldb?

我正在使用Grails-1.2.1 跟踪Jason Rudolph在InfoQ上的书中的赛道示例.我到了我要从hsqldb切换到mysql的部分.我想我已经删除了DataSource.groovy文件中对hsqldb的每个引用,但是我得到了一个异常,堆栈跟踪显示它仍在使用hsqldb.

DataSource.groovy的

dataSource {
    boolean pooled = true
    String driverClassName = "com.mysql.jdbc.Driver"
    String url = "jdbc:mysql://localhost/dfpc2"
    String dbCreate = "create"
    String username = "dfpc2"
    String password = "dfpc2"
    dialect = org.hibernate.dialect.MySQL5InnoDBDialect 
}
hibernate {
    cache.use_second_level_cache=true
    cache.use_query_cache=true
    cache.provider_class='net.sf.ehcache.hibernate.EhCacheProvider'
}
// environment specific settings
environments {
    development {
    }
    test {
    }
    production {
    }
}
Run Code Online (Sandbox Code Playgroud)

当我grails run-app全部启动没有错误.我可以导航到主页.但是当我点击其中一个链接时,我得到一个堆栈跟踪:

java.sql.SQLException: Table not found in statement [select this_.id as id0_0_, this_.version as version0_0_, this_.name as name0_0_, this_.variant as …
Run Code Online (Sandbox Code Playgroud)

grails datasource

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

Ruby Regexp:+ vs*.特殊行为?

使用ruby regexp我得到以下结果:

>> 'foobar'[/o+/]
=> "oo"
>> 'foobar'[/o*/]
=> ""
Run Code Online (Sandbox Code Playgroud)

但:

>> 'foobar'[/fo+/]
=> "foo"
>> 'foobar'[/fo*/]
=> "foo"
Run Code Online (Sandbox Code Playgroud)

文档说:
*:前面
+的重复零次或多次:前面的一次或多次重复

所以我希望'foobar'[/ o*/]返回与'foobar'相同的结果[/ o + /]

有没有人对此有解释

ruby regex

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

将多个PDF文件合并/转换为一个PDF

如何将多个PDF文件合并/转换为一个大型PDF文件?

我尝试了以下内容,但目标文件的内容不符合预期:

convert file1.pdf file2.pdf merged.pdf
Run Code Online (Sandbox Code Playgroud)

我需要一个非常简单/基本的命令行(CLI)解决方案.如果我可以将合并/转换的输出直接输入pdf2ps(最初尝试在我之前提出的问题:Linux管道(转换 - > pdf2ps - > lp)),那将是最好的.

linux pdf merge command-line-interface

986
推荐指数
16
解决办法
66万
查看次数

可以配置Jackson-Json Mapper根据它序列化的对象排除属性吗?

假设我有一些对象,例如带有地址对象列表的业务,以及具有业务的订单.

是否可以进行配置,以便在序列化顺序时,它会从Business对象中排除地址列表,并且在序列化业务时它包含列表?

我正在使用ajax为RIA提取数据,在使用Order时我并不真正关心地址数据,但在处理Business时我确实想要列表.

我也使用Hibernate进行持久化,因此这实际上是一种效率和性能优化.

java json jackson

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

超出程序结束的语法错误

我正在尝试用ocaml编写一个玩具编译器.目前,我正试图为我的词法分析器实施越位规则.但是,我在使用ocaml语法时遇到了一些麻烦(编译器错误非常缺乏信息).下面的代码(33行)导致第34行出错,超出了源代码的末尾.我不确定是什么导致了这个错误.

open Printf

let s = (Stack.create():int Stack.t);

let rec check x =
    (
        if Stack.is_empty s then
            Stack.push x s
        else if Stack.top s < x then
            (
                Stack.push x s;
                printf "INDENT\n";
            )
        else if Stack.top s > x then
            (
                printf "DEDENT\n";
                Stack.pop s;
                check x;
            )
        else
            printf "MATCHED\n";
     );

let main () =
    (
        check 0;
        check 4;
        check 6;
        check 8;
        check 5;
    );

let _ = Printexc.print main ()
Run Code Online (Sandbox Code Playgroud)

Ocaml输出:

File …
Run Code Online (Sandbox Code Playgroud)

ocaml

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

我可以将Trace消息输出到Visual C#2008 Express中的单独窗口吗?

控制台,调试和跟踪消息似乎都显示在"输出"窗口中,这在大多数情况下都很好,但我希望单独显示我的跟踪消息(因此它们不会与其他所有内容交错).没有写入文件/日志有没有办法做到这一点?

trace visual-studio-2008

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