小编Ste*_*epp的帖子

"||"有什么区别 和"或"在Perl?

C风格的运算符&&,||...和它们的Perl人类可读版本" and"," or",... 之间有什么区别?

互联网代码似乎使用它们:

open (FILE, $file) or die("cannot open $file");
open (FILE, $file) || die("cannot open $file");
Run Code Online (Sandbox Code Playgroud)

perl operators

36
推荐指数
4
解决办法
7万
查看次数

__LINE__相当于Java?

我正在寻找一种__LINE__在输出消息中包含编译时常量的方法.

似乎存在各种解决方案,但是__LINE__在JS__LINE__C#中建议的运行时损失很大.它们通常始终基于运行时对象StackFrame作为log4j.

使用log4j在所需的基础上启用/禁用的可能性也不是一种选择,因为通常在发生错误时,启用行号为时已晚,并且内联代码似乎不再具有任何行号..是否有可能:

  1. 在编译之前预处理java源文件,理想情况下使用与Eclipse 1集成的东西,因此也可以在developpement平台上测试它.
  2. 能够在加载时预处理该类.通过摊销,开销可以忽略不计.

1.实际上我确实使用了一个丑陋的黑客:在构建服务器上通过ANT技巧结账后调用自定义预处理器

java logging portability

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

在Postgres SQL中将SHA1签名存储为主键

我正在写一个简单的内容管理系统.我需要存储外部计算的SHA1哈希值作为我最大表的主键.

我显然可以使用一个序列作为主键并索引SHA1十六进制字符串以进行查找...但是,我正在寻找一个更优雅的解决方案,我将简单地使用20字节的SHA1计算值作为给定我要在数据库表中插入/删除/更新的行的键.是否存在可用于存储的高效存储类型,以及稍后使用SHA1密钥作为主键?

我显然需要postgres来支持使用20字节值作为完成此操作的键.

有想法的人吗?

postgresql sha1 primary-key

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

什么是fadvise/madvise相当于Windows?

例如,在UNIX上,我可以告诉操作系统将来需要映射posix_fadvise(POSIX_FADV_WILLNEED).然后,如果感觉如此,它将预读数据.

如何告诉访问打算Windows?

unix winapi portability memory-management

10
推荐指数
3
解决办法
3592
查看次数

如何在Perl中检索终端宽度?

我想输出一个进度条,但如何在Perl中检索终端宽度?

核心Perl解决方案将是首选,因为我无法访问编译器,只需已安装的5.8.2 Perl.

terminal perl

9
推荐指数
4
解决办法
8759
查看次数

DB2中的generate_series()等效项

我正在尝试搜索DB2等效的generate_series()(PostgreSQL生成行的方式).我显然不想用VALUES语句对行进行硬编码.

select * from generate_series(2,4);

    generate_series
    -----------------
                    2
                    3
                    4
    (3 rows)
Run Code Online (Sandbox Code Playgroud)

sql db2 auto-generate

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

如何以安全的方式创建带有便携式shell的临时文件?

我想在POSIX shell(/bin/sh)中创建一个临时文件.

我发现mktemp(1)在我的AIX盒存在好好尝试一下,并根据如何便携式是mktemp的(1)?,无论如何,它不是那么便携和/或安全.

那么,我应该使用什么呢?

shell portability posix temporary-files secure-coding

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

C中非常简单的地图实现(用于缓存目的)?

我有一个程序,它读取文件中的gethostbyname()URL 并在每个URL主机上执行.这个电话很费劲.我想缓存它们.

C中是否有一个非常简单的基于地图的代码片段,我可以用来进行缓存?(我只是不想重新发明轮子).

它必须具有以下几点:

  • 具有许可许可的开源(想想BSD或公共域).
  • 非常简单:理想情况下不到100 LOC
  • 键是char*和值void*.无需复制它们.
  • 没有实际需要实现remove(),但是contains()需要或者put()应该替换价值.

PS:我标记了它的作业,因为它可能.我只是非常懒惰,并且想要避免在重新实现时遇到的所有常见陷阱.

c code-reuse map code-snippets

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

在DB2中拆分VARCHAR以检索其中的值

我有一个VARCHAR包含5个以' ' 分隔的信息(2 CHAR(3)和3 TIMESTAMP)的列$.

CREATE TABLE MYTABLE (
  COL VARCHAR(256) NOT NULL
);

INSERT INTO MYTABLE 
VALUES
    ( 'AAA$000$2009-10-10 10:50:00$null$null$null' ),
    ( 'AAB$020$2007-04-10 10:50:00$null$null$null' ),
    ( 'AAC$780$null$2007-04-10 10:50:00$2009-04-10 10:50:00$null' )
;
Run Code Online (Sandbox Code Playgroud)

我想提取第4场......

'AAA$000$2009-10-10 10:50:00$null$null$null'
                             ^^^^ this field
Run Code Online (Sandbox Code Playgroud)

...有类似的东西

SELECT SPLIT(COL, '$', 4) FROM MYTABLE

1
-----
'null'
'null'
'2009-04-10 10:50:00'
Run Code Online (Sandbox Code Playgroud)

我按顺序搜索:

  1. DB2内置字符串函数
  2. 一个可嵌入的声明,如SUBSTR(COL, POSSTR(COL)+1)...
  3. 用户定义的函数,其行为类似于 SPLIT

精度:是的,我知道这是不是有这样的列个好主意......

sql string db2 split

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

在重写java 1.4中的方法时如何避免"未使用的参数"警告?

在这段代码中:

public class MyClass {
    private Object innerValue;
    public Object getInnerValue() {
        return this.innerValue;
    }
    public void setInnerValue(Object innerValue) {
        this.innerValue = innerValue;
    }
}

public class MyClassReadOnly extends MyClass {
    MyClassReadOnly(MyClass cls) {
        // Make a field by field copy
        super.setInnerValue(cls.getInnerValue());
    }
    public void setInnerValue(Object innerValue) {
        throw new UnsupportedOperationException(
                            "This is a read-only instance"
                        );
    }
}
Run Code Online (Sandbox Code Playgroud)

编译器正确地抱怨未使用的参数(从未看过)innerValueMyClassReadOnly.setInnerValue() .

我不想禁用这种警告,因为它通常非常有用,而且我不希望任何警告要么具有高信噪比.

我不能使用@SuppressWarnings()构造作为另一个问题,因为它只是Java 1.4.

我想过插入像这样的虚拟代码,但它不是很令人满意:

public void setInnerValue(Object innerValue) {
    if (innerValue != null) { …
Run Code Online (Sandbox Code Playgroud)

java overriding params suppress-warnings

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