小编int*_*nt3的帖子

在Python中访问具有偏移量的元素,用于... in循环

我一直在用Python捣乱,我收集到它通常更好(或'pythonic')使用

for x in SomeArray:
Run Code Online (Sandbox Code Playgroud)

而不是更多的C风格

for i in range(0, len(SomeArray)):
Run Code Online (Sandbox Code Playgroud)

我确实看到了这方面的好处,主要是更清晰的代码,以及使用漂亮map()和相关功能的能力.但是,我经常遇到这样的情况:我想同时访问数组中不同偏移的元素.例如,我可能想要将当前元素添加到元素后面两步.有没有办法在不诉诸显式指数的情况下做到这一点?

python loops

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

缓存线对齐(需要澄清文章)

我最近在应用程序中遇到了我认为是错误共享的问题,我查阅了Sutter关于如何将数据与缓存行对齐的文章.他建议使用以下C++代码:

// C++ (using C++0x alignment syntax)
template<typename T>
struct cache_line_storage {
   [[ align(CACHE_LINE_SIZE) ]] T data;
   char pad[ CACHE_LINE_SIZE > sizeof(T)
        ? CACHE_LINE_SIZE - sizeof(T)
        : 1 ];
};
Run Code Online (Sandbox Code Playgroud)

我可以看到当这CACHE_LINE_SIZE > sizeof(T)是真的时它会如何工作- 结构cache_line_storage最终会占用一个完整的内存缓存行.但是,当sizeof(T)大于单个缓存行时,我认为我们应该按CACHE_LINE_SIZE - T % CACHE_LINE_SIZE字节填充数据,以便生成的结构的大小是缓存行大小的整数倍.我的理解有什么问题?为什么填充1个字节就足够了?

c++ multithreading caching memory-alignment c++11

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

是否有可能将更强大的HTML解析器连接到Python机械化?

我试图使用mechanize在网站上解析并提交表单,但看起来内置表单解析器无法检测表单及其元素.我怀疑它在形成不良的HTML上很窒息,我想尝试使用一个解析器进行预解析,该解析器更好地设计用于处理错误的HTML(例如lxml或BeautifulSoup),然后将经过修饰的清理输出提供给表单解析器.我需要机械化不仅用于提交表单而且用于维护会话(我在登录会话中使用此表单.)

我不确定如何做到这一点,如果它确实可能..我不熟悉HTTP协议的各种细节,如何让各个部分一起工作等等.任何指针?

python mechanize

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

Python的限制是什么?

我花了几天时间阅读有关C++和Python的内容,我发现Python更简单易学.

所以我想知道真的值得花时间学习它吗?或者我应该花时间学习C++?

C++可以做什么而Python不能做什么?

c++ python

9
推荐指数
3
解决办法
8945
查看次数

什么是一个很好的入门级书籍/压缩资源?

我正在寻找有关数据/音频/视频压缩的一些理论,并很乐意得到一些建议.在线和打印资源都很好.

compression algorithm

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

互斥锁上的锁也适用于被调用的函数吗?

如果在函数中定义了互斥锁,它的锁是否适用于从该函数调用的函数?即

void f () {  
    Mutex mutex;  
    g();  
}
Run Code Online (Sandbox Code Playgroud)

锁仍然适用于g()中的任何数据修改吗?

另外,我是否正确地说,类方法中定义的锁只适用于该类的特定实例?含义:

Class Foo;  
Foo foo1, foo2;
(In thread 1) foo1.bar();  
(In thread 2) foo2.bar();  
Run Code Online (Sandbox Code Playgroud)

每个电话会同时发生吗?

如果有人可以解释/指出解释互斥体背后机制的链接,那将是一个很好的奖励.谢谢!我目前正在使用Qt Thread库,如果该信息有帮助的话.

qt multithreading mutex

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

过程调用如何在汇编程序中工作?

我刚刚开始修补ASM,我不确定我对程序调用的理解是否正确.

在代码中的某个时刻说有一个过程调用

call dword ptr[123]
Run Code Online (Sandbox Code Playgroud)

并且该过程只包含一个命令,ret:

ret 0004
Run Code Online (Sandbox Code Playgroud)

这个过程调用会产生什么影响,返回值将存储在何处?我在某处读到了一个2字节的返回值将存储在AX中,但当我替换过程调用时

mov AX, 0004
Run Code Online (Sandbox Code Playgroud)

(连同必要的NOP)程序崩溃.

x86 assembly call function-calls

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

Visual C++使用什么形式的别名分析?

我试图找出在Visual C++中使用什么形式的别名分析.它也被称为指针分析,模型参考分析,点到分析或副作用分析,并且非常接近逃逸分析或形状分析(如果您已经看到这些术语被绑定).

如果有人知道MSDN讨论这种事情的地方,我可能会从那里找到我的方式.(我尝试过搜索,但如果你没有在那里花太多时间,MSDN似乎是难以理解的.)

compiler-construction optimization static-analysis pointer-aliasing visual-c++

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

我可以通过AJAX从外部页面加载数据吗?

我刚开始学习jQuery和AJAX.我可以将本地页面(在我的磁盘上)加载到div中jQuery.load(),但外部站点似乎不起作用.我甚至使用wireshark来检查数据是否从服务器发送(它是).示例代码如下:

<html>
<head>
    <script src='jquery-1.4.2.min.js'></script>
    <script>
        $(document).ready(function() {
            // $('#test').load('localpage.htm'); works!
            $('#test').load('http://www.google.com/'); // does not work!
        });
    </script>
</head>
<body>
<div id='test'></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

首先可以做到这一点吗?如果是这样,怎么样?

javascript ajax jquery

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

针对部分排序数据的分析排序算法

我们知道几种排序,例如插入排序,对于"大多数排序"并且在随机数据上不太好的阵列非常有用.

假设我们想要分析这种算法相对于输入数据的"排序"方式的性能改进/降级.什么是生成"越来越多排序"或"越来越随机"的元素数组的好方法?我们如何衡量输入的"排序"?

sorting algorithm

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