小编Evg*_*eny的帖子

破坏析构函数异常的返回值

我有以下代码:

#include <stdexcept>
#include <iostream>

struct ok {
    int _n;
    ok(int n) : _n(n) { std::cerr << "OK" << n << " born" << std::endl; }
    ~ok() {  std::cerr << "OK" << _n << " gone" << std::endl; }
};

struct problematic {
    ~problematic() noexcept(false) { throw std::logic_error("d-tor exception"); }
};

ok boo() {
    ok ok1{1};
    problematic p;
    ok ok2{2};
    return ok{3}; // Only constructor is called...
}

int main(int argc, char **argv) {
    try {boo();} catch(...) {}
}
Run Code Online (Sandbox Code Playgroud)

我看到他没有调用ok …

c++ destructor exception object-lifetime c++14

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

转换到双精度和浮点数是否保留无穷大和 NaN?

当施放双无穷大时,反之亦然,它仍然是无穷大吗?和 NaN 一样吗?

c++ floating-point nan

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

Java正则表达式 - 重叠匹配

在以下代码中:

public static void main(String[] args) {
    List<String> allMatches = new ArrayList<String>();
    Matcher m = Pattern.compile("\\d+\\D+\\d+").matcher("2abc3abc4abc5");
    while (m.find()) {
        allMatches.add(m.group());
    }

    String[] res = allMatches.toArray(new String[0]);
    System.out.println(Arrays.toString(res));
}
Run Code Online (Sandbox Code Playgroud)

结果是:

[2abc3, 4abc5]
Run Code Online (Sandbox Code Playgroud)

我希望它是

[2abc3, 3abc4, 4abc5]
Run Code Online (Sandbox Code Playgroud)

如何实现?

java regex

20
推荐指数
3
解决办法
4583
查看次数

变量声明是否意味着内存分配?

是否可以准确地说出来

void f() {
    int x;
    ...
}
Run Code Online (Sandbox Code Playgroud)

" int x;"表示sizeof(int)在堆栈上分配字节?

那有什么规格吗?

c

14
推荐指数
3
解决办法
6297
查看次数

强制Java泛型参数具有相同的类型

如何在没有错误的情况下实现类似的功能?

class A<K> {
   void f(K x) {}
}

void foo(A<? extends X> a, X x) {
    a.f(x); // AN error: The method f(capture#1-of ? extends X) in the 
            // type A<capture#1-of ? extends X> is not applicable for the 
            // arguments (X)
}
Run Code Online (Sandbox Code Playgroud)

我知道它发生是因为'a'可以是A <"non-X">的一个实例,所以它的'f'不能接受X的一个实例作为参数,但我怎么能强制参数是相同的类型?

这是更多的代码:

测试类:

class Test {
   <T> void foo(A<T> a, T x) {
   a.f(x); // now it works!
 }
}
Run Code Online (Sandbox Code Playgroud)

在某些课程中:

Container<X> container;
public void test() {
    X x = new X();
    new Test().foo(container.get(), x); …
Run Code Online (Sandbox Code Playgroud)

java generics

12
推荐指数
2
解决办法
3800
查看次数

Java Calendar中一周中的错误?

以下代码计算特定日期的工作周.

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = new GregorianCalendar();
cal.setTime(df.parse("2015-12-27 08:00:00"));
System.err.printf("%d.%02d\n", cal.getWeekYear(), cal.get(Calendar.WEEK_OF_YEAR));
Run Code Online (Sandbox Code Playgroud)

它目前打印2016.01.

据我所知,工作周数规格,2016.01是2016年第4周有4天,但12月27日没有办法属于这一周.

有没有办法在Java 7中做到这一点,它可以在假设星期一开始几周的任何一年工作?

java calendar date

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

MongoDB c#驱动程序 - 名为Id的字段可以不是Id吗?

更特别的是,有一堂课

class X {
       ....
       string Id { get; set; }
}

class Y : X {
       ObjectId MyId { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我希望MyId成为Y的id,即映射到_id.

可能吗?

我在这段代码后得到一个例外:

var ys = database.GetCollection("ys"); 
ys.InsertBatch(new Y[] { new Y(), new Y()}); 
Run Code Online (Sandbox Code Playgroud)

例外情况:{"类'MongoTest1.Y'的成员'MyId'不能使用元素名称'_id',因为它已被成员'Id'使用."}

完整的测试案例:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MongoDB.Bson;
using MongoDB.Bson.Serialization;
using MongoDB.Driver;

namespace MongoTest1
{
    class X
    {
        public string Id { get; set; }
    }

    class Y : X
    {
        public ObjectId MyId { get; set; } …
Run Code Online (Sandbox Code Playgroud)

c# mongodb mongodb-.net-driver

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

如何关闭Tomcat中的单个应用程序?

我想在我的 web 应用程序中运行一些代码,使应用程序停止。例如,如果数据库服务器不可用。我想实现App.exit()类似于System.exit().

供参考

使用部署在其中的 web 应用程序关闭 tomcat ”中的答案是关于关闭整个容器。这里的问题是关于关闭(或暂时禁用)单个 Web 应用程序。

tomcat

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

C - 多维数组的转换

可能重复:
C:创建指向二维数组的指针

定义数组时,如

int k[100];
Run Code Online (Sandbox Code Playgroud)

它可以转换为int*:

int* pk = k;
Run Code Online (Sandbox Code Playgroud)

它有一个指针变量,可以将多维数组转换为?

int m[10][10];
??? pm = m;
Run Code Online (Sandbox Code Playgroud)

c

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

Java - 对于A类中定义的B类(作为静态),这是什么意思?

这是一个更具体的例子:

public class A {
    public static class B {
             public void f() {
                 synchronized (B.this) {
                     // do something
                 }
             }
     }
}
Run Code Online (Sandbox Code Playgroud)

B.this指的是什么?

java

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

Chomp地图的所有键(使用更少的代码)

我正在尝试做类似的事情

my %my_map = map { chomp($_) => 1 } @my_arr;
Run Code Online (Sandbox Code Playgroud)

这不符合我的预期,所以我需要:

my @chomped_arr = @my_arr;
chomp @chomped_arr;
my %my_map = map { $_ => 1 } @chomped_arr;
Run Code Online (Sandbox Code Playgroud)

这样做的最短的方法是什么?

perl

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

添加一个空数组到哈希

有什么区别:

my %x;
push @{$x{'12'}}, ();
Run Code Online (Sandbox Code Playgroud)

和:

my %y;
$y{'12'} = ();
Run Code Online (Sandbox Code Playgroud)

为什么以下工作x而不是y

my @x1 = @{$x{'12'}}; #legal
my @y1 = @{$y{'12'}}; #illegal
Run Code Online (Sandbox Code Playgroud)

perl data-structures perl-data-structures

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

在文件中设置变量不起作用

我有一个文件 run_me

#!/bin/bash
export BOBO=MOMO
Run Code Online (Sandbox Code Playgroud)

运行后run_me,BOBO未设置变量.为什么?怎么修好?

bash

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