小编Tre*_*ith的帖子

c ++ 0x std :: shared_ptr vs. boost :: shared_ptr

我有一个大量使用的c ++代码shared_ptr和STL.一个常见的标题说

#include<boost/shared_ptr.hpp>
using boost::shared_ptr;  // for shared_ptr
using namespace std;      // for STL
Run Code Online (Sandbox Code Playgroud)

我现在想切换到c ++ 0x来使用语言功能,使用gcc 4.6 -std=c++0x.然而std::shared_ptr现在也存在,导致未指明shared_ptr(boost::shared_ptrvs std::shared_ptr)的模糊性.

切换到std::shared_ptr相反时,如下所示:

#include<memory>
using namespace std;      // for STL; also imports std::shared_ptr
Run Code Online (Sandbox Code Playgroud)

然后我遇到了问题boost::python,它boost::shared_ptr只是有效地工作(至少没有进一步的摆弄):

/usr/include/boost/python/object/make_ptr_instance.hpp:30:52: error: no matching function for call to 'get_pointer(const std::shared_ptr<Cell>&)'
Run Code Online (Sandbox Code Playgroud)

我的问题是

  • 如果有一个简单的解决方案,以解决之间的模糊性boost::shared_ptrstd::shared_ptr(比不使用的C++ 0x现在其他),并且还
  • 如果boost::shared_ptr最终只是一个别名std::shared_ptr; 这将自动解决我的问题.

谢谢!

python boost shared-ptr python-c-api c++11

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

Vim - ex模式命令 - 有没有办法移动光标位置?

在一行Vim ex命令中:

我正在尝试执行命令,然后移动到另一个位置并执行相同的命令.

有没有办法移动光标位置(需要左/右和上/下)?

vim scripting ex-mode

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

如何更改鼠标突出显示?

在GWT中,我使用的是CellTable.

当您将鼠标悬停在CellTable上时,它会突出显示每一行.

如何更改鼠标突出显示的行为?特别:

  • 改变高亮的颜色
  • 禁用启用
  • 使其仅突出显示光标处的特定网格项(而不是整行)

(我当前的黑客攻击是创建一堆1列宽的CellTables并将它们添加到VerticalPanel布局......创建一个幻觉,即有一个CellTable并根据光标突出显示每个网格.这是不是很好?为什么?表现?)

gwt

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

在同一台机器上使用Matlab 32和64位,如何在不同的地方存储设置?

由于各种原因,我需要在64位和32位Matlab中做事.

令我很懊恼......我最近发现32位和64位Matlab的设置都存储在同一个文件夹中:

C:\Users\$USERNAME\AppData\Roaming\MathWorks\MATLAB\$MATLAB_VERSION
Run Code Online (Sandbox Code Playgroud)

这是我尝试做的一件简单的事情......它失败了,因为它们共享相同的设置文件夹!:

  • 打开Matlab 32位
  • 选择32位C/C++编译器
  • 编译一些代码
  • 关闭Matlab 32位
  • 打开Matlab 64位
  • 编译相同的代码
  • 错误......你的编译器不是64位......

我在64位matlab中出错...因为!ARG!一旦我在matlab 32位中更改某些内容......它会在Matlab 64位中更改相同的设置!在这种情况下,设置是C/C++编译器.


有没有办法在单独的文件夹中为Matlab 32位和64位设置所有设置?

  • 如果有,怎么样?
  • 如果不是,使用相同的设置文件夹是否有针对此特定设置的解决方法(compopts.bat存储您选择的C/C++编译器)?

这是我想要的例子:

C:\Users\$USERNAME\AppData\Roaming\MathWorks\MATLAB\$MATLAB_VERSION\32bit
C:\Users\$USERNAME\AppData\Roaming\MathWorks\MATLAB\$MATLAB_VERSION\64bit
Run Code Online (Sandbox Code Playgroud)

configuration matlab cross-compiling configuration-management 32bit-64bit

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

对于新安装的模块,如何让`ipython`导入自动完成工作?

我刚刚sqlalchemy在我的计算机上安装了该模块,但是当我输入import sqlTAB在ipython提示符中时,自动完成功能只会向我建议内置sqlite3模块.

如何让ipython也在sqlalchemy导入自动完成时提出建议?

python module autocomplete ipython

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

Vim用另一个相同长度的单词列表替换单词列表?

我需要用一个同样长的单词列表替换一个单词列表.

例如,你有:"a","b","c","d","e","f"

并且您希望用每个单词的大写版本替换每个单词:"A","B","C","D","E","F"

我知道如何使用正则表达式找到每个字符串:(a\| b\| c\| d\| e\| f)

我知道你可以对每个单词进行全局替换.但是,当单词的长度变大时,这种方法将变得毫不夸张和不优雅.

有没有办法以某种方式进行一次全局替换?相近:

:%s/\(a\|b\|c\|d\|e\|f\)/INSERT_REPLACEMENT_LIST/
Run Code Online (Sandbox Code Playgroud)

我不确定这是否可行.

regex vim replace substitution

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

Subversion:有什么比“svnsync”更快的吗?

所以我将我的 subversion 存储库存储在某个云上(例如 code.google.com),但由于各种原因,我需要将我的代码设为非公开。

我决定需要下载整个存储库并迁移到我自己的 svn 服务器。

所以我开始使用:

svnsync init DEST SRC
svnsync sync DEST
Run Code Online (Sandbox Code Playgroud)

每次修订 repo 大约需要 0.5 秒!

幸运的是,我的 repo 只有 200 次修订……所以要等几分钟。但是对于具有 200,000 或 2,000,000 次修订的成熟项目呢?

... 2e6 * 0.5 / 60 / 60 / 24 ~ 大约 11 天!


有什么比“svnsync”更快的方法可以从云端下载你的仓库?

svn version-control svnsync

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

可以动态地向对象添加属性吗?

我想创建一个对象,然后动态地向对象添加属性.这是一些伪代码EX1:

a = object()
a.attr1 = 123
a.attr2 = '123'
a.attr3 = [1,2,3]
Run Code Online (Sandbox Code Playgroud)

EX2:此PDF的第一页

在Python中,可以动态地向对象添加属性(类似于我给出的两个示例)?如果有,怎么样?

python python-3.x

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

什么是正确的:widget.rowconfigure或widget.grid_rowconfigure?

使用网格几何管理器时.假设你有:

import tkinter as tk
from tkinter import ttk

root = tk.Tk()
root.rowconfigure(0, weight=1)
root.columnconfigure(0, weight=1)
ttk.Button(root, text="Hello World").grid(sticky=tk.NSEW)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

您指定行/列权重的部分也可以编码为:

root.grid_rowconfigure(0, weight=1)
root.grid_columnconfigure(0, weight=1)
Run Code Online (Sandbox Code Playgroud)

对于此示例,什么是正确的方法:widget.rowconfigure或widget.grid_rowconfigure?为什么?

奖励:从实施POV,为什么两者都有效?

python user-interface tk-toolkit tkinter

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

快速滚动

我正在寻找一种快速计算滚动总和的方法,可能使用Numpy.这是我的第一种方法:

 def func1(M, w):
     Rtn = np.zeros((M.shape[0], M.shape[1]-w+1))
     for i in range(M.shape[1]-w+1):
         Rtn[:,i] = np.sum(M[:, i:w+i], axis=1)
     return Rtn

 M = np.array([[0.,  0.,  0.,  0.,  0.,  1.,  1.,  0.,  1.,  1.,  1.,  0.,  0.],
               [0.,  0.,  1.,  0.,  1.,  0.,  0.,  0.,  0.,  0.,  0.,  1.,  1.],
               [1.,  1.,  0.,  1.,  0.,  0.,  0.,  1.,  0.,  0.,  0.,  0.,  0.]])

 window_size = 4
 print func1(M, window_size)

 [[ 0.  0.  1.  2.  2.  3.  3.  3.  3.  2.]
  [ 1.  2. …
Run Code Online (Sandbox Code Playgroud)

python numpy sliding-window

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