小编Sah*_*has的帖子

GNU Screen:更改全局键绑定

我最近开始在远程会话中使用屏幕.一个问题是emacs无法识别它的Ca,我不想将emacs Ca绑定到别的东西,因为我已经习惯了.

Google展示了使用〜/ .screenrc单独更改每个键绑定的方法,而不是如何全局更改键绑定.我希望所有的Ca都改变成别的东西.那可能吗?我有什么选择?

谢谢你的回答

emacs gnu-screen

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

将迭代器存储在容器中

我正在构建另一个应用程序将使用的DLL.我想在从函数调用返回之前将一些数据的当前状态全局存储在DLL的内存中,这样我就可以在下次调用函数时重用state.

为此,我必须保存一些迭代器.我正在使用std :: stack存储所有其他数据,但我不确定是否可以使用迭代器来完成.

将列表迭代器放在容器类中是否安全?如果没有,你能建议一种方法来存储指向列表中元素的指针,以便我以后可以使用它吗?

我知道使用向量来存储我的数据而不是列表会允许我存储下标并非常容易地重用它,但不幸的是我只需要使用std :: list.

c++ iterator stl

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

使用变量将数据库路径传递到\ l或.Ql

我正在编写一个在特定路径中加载数据库并对其进行一些处理的aq脚本。db的位置当前在脚本中进行了硬编码,但是我想将db路径作为参数传递,并从变量的路径中加载它。

当前看起来像这样:

q) \l /path/to/dbDir        #Works
Run Code Online (Sandbox Code Playgroud)

我发现.Ql应该让我们使用变量来执行此操作,因此我尝试在脚本中使用以下内容,

dbPath:`$.z.x 0
.Q.l hsym dbPath            #Fails
Run Code Online (Sandbox Code Playgroud)

当使用参数/ path / to / dbDir运行时,该脚本始终会因一些不可读的内容而失败,并且:

':/path/to/dbDir: No such file or directory
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

kdb q-lang

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

如何将自定义客户端传递给 Golang oauth2.Exchange

https://godoc.org/golang.org/x/oauth2#Config.Exchange上的 oauth2.Exchange 文档说:

要使用的 HTTP 客户端源自上下文。如果未通过上下文提供客户端,则使用 http.DefaultClient。

现在我已经用我自己的设置创建了一个 http.Client 。如何让 oauth2.Exchange 函数使用它?

go oauth-2.0

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

指向std :: map中的值的指针

我有一个std :: map,多个线程用它来存储数据.地图声明如下:

std::map<int, Call> calls;
Run Code Online (Sandbox Code Playgroud)

从每个线程,我必须获取互斥锁,获取指向或属于该线程的对象的引用,然后释放互斥锁.之后我可以修改对象,因为每个对象只由一个线程使用.一旦线程死亡,地图中的相应对也将被删除.

我想知道实现这个的最佳方法.我在考虑两种方式:

1)我知道这个人看起来非常疯狂,但仍然

std::map<int, Call> calls;
...

{
    mutex.lock();
    Call* callptr = &calls[id];
    mutex.unlock();

   // use callptr
}
Run Code Online (Sandbox Code Playgroud)

或2)我觉得这个看起来更明智

std::map<int, std::auto_ptr<Call> > calls;

...

{
    mutex.lock();
    std::auto_ptr<Call> callptr = map[id];
    mutex.unlock();

    // use callptr

    mutex.lock();
    map[id] = callptr;
    mutex.unlock();
}
Run Code Online (Sandbox Code Playgroud)

线程实际上是在不同的dll中创建的,我没有代码.我正在编写的这个dll由该dll导入并使用.所以它必须只用std :: map实现,但是有人可以告诉我其中一种方法是否正常,或者是否有办法使它更稳定.

谢谢

c++ stl

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

如何从bool转为void*?

我正在尝试使用mingw在Windows上为gtkmm构建cairomm.编译在函数调用中断,该函数调用具有将bool的reinterpret_cast执行为void*的参数.

cairo_font_face_set_user_data(cobj(), &USER_DATA_KEY_DEFAULT_TEXT_TO_GLYPHS, reinterpret_cast<void*>(true), NULL);
Run Code Online (Sandbox Code Playgroud)

这是代码中断的地方,原因是"从bool到void*的reinterpret_cast无效".为什么会发生这种情况,如何修改此行以使其编译?需要帮忙

c++ type-conversion

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

标签 统计

c++ ×3

stl ×2

emacs ×1

gnu-screen ×1

go ×1

iterator ×1

kdb ×1

oauth-2.0 ×1

q-lang ×1

type-conversion ×1