小编Rus*_*ove的帖子

双删除会发生什么?

Obj *op = new Obj;
Obj *op2 = op;
delete op;
delete op2; // What happens here?
Run Code Online (Sandbox Code Playgroud)

当你意外地双重删除时,最糟糕的情况是什么?有关系吗?编译器会抛出错误吗?

c++ pointers memory-leaks

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

使用/ usr/bin/clang进行pip安装失败:没有这样的文件或目录

我正在将我的开发环境迁移到10.8,但是我遇到了pip的问题.

具体来说,我正在使用virtualenvs/virtualwrapper但不能pip install psycopg2,并且在构建psycopg2._psycopg扩展时,我得到:

unable to execute /usr/bin/clang: No such file or directory
error: command '/usr/bin/clang' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)

任何人都可以提供解决方案吗?

postgresql pip psycopg2 osx-mountain-lion

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

为什么这两个指针减法会给出不同的结果?

请考虑以下代码:

char* p = new char[2];
long* pi = (long*) p;
assert(p == pi);         // OK

char* p1 = &p[1];
long* pi1 = (long*) p1;
assert(p1 == pi1);       // OK

int d = p1 - p;
int d1 = pi1 - pi;
assert(d == d1);         // No :(
Run Code Online (Sandbox Code Playgroud)

在此之后跑,我得d == 1d1 == 0,虽然p1 == pi1p == pi(我在调试器中检查这一点).这是未定义的行为吗?

c++

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

什么是这个无特色的Python异常?

我在Python 2.6上有一个包含与此类似的部分的脚本:

import sys

list_id='cow'
prev=[0,'cow']

try:
    if list_id==prev[1]:
        print '{0} is the same as {1}'.format(list_id,prev[1])
        sys.exit(0)
except:
    print 'exception occurred, exiting with error'
    sys.exit(1)
Run Code Online (Sandbox Code Playgroud)

我注意到虽然它打印的是"相同"的行,但它也会记录异常!

如果删除try/except块,则解释器不会显示错误.如果捕获到ValueError之类的特定错误,则不执行except块.

import sys

list_id='cow'
prev=[0,'cow']

try:
    if list_id==prev[1]:
        print '{0} is the same as {1}'.format(list_id,prev[1])
        sys.exit(0)
except Exception as k:
    print 'exception occurred, exiting with error. Exception is:'
    print k.args
    sys.exit(1)
Run Code Online (Sandbox Code Playgroud)

不执行except块,并且该过程以返回码0结束.因此,异常在层次结构中的异常之上?

import sys

list_id='cow'
prev=[0,'cow']

try:
    if list_id==prev[1]:
        print '{0} is the same as {1}'.format(list_id,prev[1])
        sys.exit(0)
except BaseException as k:
    print 'exception occurred, …
Run Code Online (Sandbox Code Playgroud)

python exception python-2.6

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

什么是获取文件大小的最佳方式?

实际上,我有三种方法来确定文件大小:

  1. 打开并读取它,并使用len()获取字符串的大小
  2. 使用os.stat并通过st_size获取 - >应该是什么"正确"的方式,因为它由底层操作系统处理
  3. os.path.getsize应该与上面相同

那么确定文件大小的实际正确方法是什么?什么是最糟糕的方式?或者甚至不重要,因为最后它们都是一样的?

(我可以想象第一种方法对于非常大的文件有问题,而另外两种方法没有)

python filesize

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