小编Pat*_*ryk的帖子

应用程序的系统范围热键

我有一个带有3个按钮的简单窗口,我正在尝试添加一个系统范围的热键,这样我就可以"按下"这些按钮而无需切换到该应用程序,按下按钮然后回到我正在做的事情.

Cmd+ Shift+ 1按下按钮1,Cmd+ Shift+ 2按下按钮2等.

有没有办法在Cocoa中实现这一点(使用Objective-C)?谢谢,代码很受赞赏,因为我是Cocoa的新手.

macos cocoa button

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

为什么unique_ptr析构函数的异常终止程序?

看看这段代码导致程序终止而不会捕获异常.

#include <iostream>
#include <string>
#include <memory>
#include <stdexcept>
using namespace std;

struct test {
  ~test() noexcept(false) {
    throw runtime_error("-my-cool-exception-");
  }
};

int main()
{
  try {
    auto ptr = unique_ptr<test>(new test());
    //test t; // this is ok, without unique_ptr<test> it works fine.
  }
  catch(exception& e) {
    cout << "this is not called, the program is aborted";
    cout << e.what() << endl;
  }
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

这个问题与堆栈溢出问题不同:从析构函数中抛出异常.

不同之处在于,只有当我使用unique_ptr<test>异常时才会被捕获.

您可以在http://cpp.sh/9sk5m查看实时代码,编辑和编译

c++ unique-ptr c++11

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

如何允许 clang-format 在一行上格式化空类/结构?

具有以下结构定义:

struct city
{
};
struct country
{
};
Run Code Online (Sandbox Code Playgroud)

我想要clang-format为我格式化

struct city {};
struct country {};
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

我可以看到很多选项,例如AllowShortBlocksOnASingleLine, AllowShortFunctionsOnASingleLineorAllowShortIfStatementsOnASingleLine但没有AllowShortClassDefinitionsOnASingleLine(或类似)。

c++ formatting clang-format

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

如何计算Dictionary中唯一值的出现次数?

我有一个字典,双精度值和字符串作为键.

我想计算这个字典中每个值的出现次数,我想知道这个值(例如重复).

例如:

key1, 2
key2, 2
key3, 3
key4, 2
key5, 5
key6, 5
Run Code Online (Sandbox Code Playgroud)

我想得到一个清单:

2 - 3 (times)
3 - 1 (once)
5 - 2 (twice)
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

c# dictionary distinct

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

使用notepad ++在正则表达式中查找行尾

我正在使用Notepad ++,我想找到新的行(在连字符之后,可选空格和结束行中的一些字符).我想出了这样的事情:

  • -[ ]?.*\n

我也尝试过:

  • -[ ]?.*(\n)
  • -[ ]?.*(\r\n)
  • -[ ]?.*[\r\n]
  • -[ ]?.*[\n]

这些都没有奏效.如果重要的话,我正在Windows上工作.

regex newline notepad++ find

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

如何在单独的目录中运行带有DLL的.exe?

我知道这已经在这里讨论了,但是我没有找到我想要的问题,即:我有一个C++应用程序,它使用了很多(超过20-30个)DLL.我已经在我的Visual Studio 2010项目中定义了.exe将被复制到ProjectDir(这样一切都很整洁)但是当.exe单独站在ProjectDir中时它无法访问存储在bin中的DLL. //任何文件夹以及许多其他文件.

我可以以某种方式指向DLL文件夹,以便应用程序知道它们的位置吗?(并且<myapp>.exe.local文件夹在我的Windows 7中不起作用)

c++ dll visual-studio

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

如何在连接组件标签中使用不相交集?

我在连接组件标签中使用不相交集很困难.我已经看了很多例子,并且在这个问题上,Bo Tian提供了一个非常好的Disjoint Sets实现作为C++链表.我已经在我的程序中实现了连接组件标签(标签是简单的整数),但我很难解决具有不相交集的标签之间的等价.

任何人都可以帮助我 - 也许使用博天的实施?我认为,当他们达到这一点时,这也将有助于其他人.

编辑

我的算法遍历图像,当它找到两个标签时,两个连接的像素具有不同的标签,它必须在"等价注册表"(它将是Disjoint set forest)中做出注释.在循环整个图像之后,我必须通过(在图像上第二次传递)查看注册表来解析等价物,然后将具有等效标签的这些像素标记为最小值.

c++ algorithm linked-list disjoint-sets data-structures

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

在node.js中将数组传递给jade模板时遇到问题

我试图传递一系列新闻在屏幕上显示但我在某种程度上在浏览器的结果中得到空数组

路线/ rss.js

...
var news = [];
...
          var this_news = { 
            'title': item.title,
            'description': item.description
          }   
          news.push(this_news);
...
  res.render('rss', { 
    title: 'Node.js based RSS reader',
    newsi: JSON.stringify(news)
  }); 
Run Code Online (Sandbox Code Playgroud)

意见/ rss.jade

extends layout

block content
  h1= title
  p Welcome to #{title}
  p Sure why not 
  script(type='text/javascript').
    var inews = !{newsi};
Run Code Online (Sandbox Code Playgroud)

编辑

好的,我得出结论,问题在于我的'非回调逻辑'

这是我的代码:

var FeedParser = require(__dirname + '/../node_modules/feedparser')
  , request = require(__dirname + '/../node_modules/request');

exports.news = function(req, res){

  var news = []; 
    request('http://feeds.feedburner.com/niebezpiecznik/')
    .pipe(new FeedParser())
      .on('error', function(error) { …
Run Code Online (Sandbox Code Playgroud)

javascript arrays node.js pug

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

将socket.io共享给其他模块会产生空对象

我试图socket.io在不同的node.js模块中共享套接字对象,虽然我失败并获得空对象

Cannot call method 'on' of undefined
Run Code Online (Sandbox Code Playgroud)

我的代码:

app.js

var express = require('express')
  , app = express();

var server = require('http').createServer(app)
  , io = require('socket.io').listen(server)

var routes = require('./routes')
  , path = require('path')
  , rss = require('./routes/rss')

// ...

exports.io = io;
Run Code Online (Sandbox Code Playgroud)

路线/ rss.js

io = require(__dirname + '/../app');

console.log(io);
io.sockets.on('connection', function(
  console.log("Connection on socket.io on socket");
  // .. do stuff 
});
Run Code Online (Sandbox Code Playgroud)

这是我得到的输出:

$ node app.js                                                                                                    
   info  - socket.io started
{}

/home/XXX/programming/nodejs/node-express-aws/routes/rss.js:10
io.sockets.on('connection', function(socket){
           ^
TypeError: Cannot call …
Run Code Online (Sandbox Code Playgroud)

javascript sockets module node.js socket.io

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

Go中这个括号括起的变量声明语法是什么?

我试图在Go中找到关于括号括起的变量声明语法的一些信息,但也许我只是不知道它的名字,这就是为什么我找不到它(就像例如值和指针接收器一样).

即我想知道这种语法背后的规则:

package main

import (
    "path"
)

// What's this syntax ? Is it exported ? 
var (
    rootDir = path.Join(home(), ".coolconfig")
)

func main() {
  // whatever
}
Run Code Online (Sandbox Code Playgroud)

这些变量是否在var ()导入此模块的模块中可用?

variables syntax declaration go

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