小编Max*_*rai的帖子

信号和绑定参数

我正在使用boost::signals2库,这里是简单的代码:

boost::signals2<void ()> sig;
class Foo {
   void Slot() {}
};

Foo obj;
sig.connect( boost.bind(&Foo::Slot, &obj) );
Run Code Online (Sandbox Code Playgroud)

一切都很好.但现在我希望我的信号在参数中传递一些数据:

boost::signals2<void (std::vector<float>)> sig2;
class Foo {
   void Slot2(std::vector<float>) {}
};
Run Code Online (Sandbox Code Playgroud)

绑定Slot2再次发出信号的正确方法是什么?

这是错误:http://dpaste.com/752076/当我使用相同的连接和绑定代码时.

c++ boost signals bind

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

c ++ 11中的正则表达式

我想解析Linux中的cpu信息.我写了这样的代码:

// Returns full data of the file in a string
std::string filedata = readFile("/proc/cpuinfo");

std::cmath results;
// In file that string looks like: 'model name : Intel ...'
std::regex reg("model name: *");
std::regex_search(filedata.c_str(), results, reg);

std::cout << results[0] << " " << results[1] << std::endl;
Run Code Online (Sandbox Code Playgroud)

但它返回空字符串.怎么了?

c++ regex linux c++11

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

定义vs名称空间

我有一个代码:

namespace My
{
    #define sptr std::shared_ptr;
}
Run Code Online (Sandbox Code Playgroud)

它被用在很多地方.现在我已将此代码作为库包含到qt项目中,并且无法加载,因为它sptr在某处用作变量名称.

我可以修改Qt标头并重命名变量,但这在可移植性方面并不好.解决这个问题的最佳方法是什么?typedef不能与模板一起使用.我知道模板结构的黑客,但我仍然需要修改我的代码.

c++ macros templates typedef

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

Qt - 创建QPainter

我正在尝试paintEvent在我的程序中重写方法并更改它.

void MainWindow::paintEvent(QPaintEvent *event)
{
    QRegion reg = this->bgPixmapHandle->rect();
    QPainter painter(this);

    painter.setClipRegion(reg);
    painter.drawImage(bgPixmapHandle->rect(), bgPixmapHandle);
    painter.end();
}
Run Code Online (Sandbox Code Playgroud)

在这里,我尝试改变我的bg形象.但我在网上收到了错误:QPainter painter(this);

错误:变量'QPainter painter'已初始化,但类型不完整

c++ qt qpainter paintevent

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

PHP +重定向会话

我正在尝试用几种语言制作我的网站.每个页面都包含config-file,它会在会话中检查变量'lang'.如果它不存在,将被重定向到lang选择的页面.选择之后你会来到这个页面.但它仅适用于Mozilla Firefox.在语言检查后的其他浏览器中,我总是得到这个页面(lang检查).我做错了什么?配置文件:

// Here is session start...
if (!isset($_SESSION['site_lang']))
{
  $_SESSION['page_refer'] = "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; 
  echo '<meta http-equiv="Refresh" content="0; URL=lang_choose.php">';
  exit;
}
else
{
  require_once 'languages/'.$lang.'.php';
}
?>
Run Code Online (Sandbox Code Playgroud)

lang_choose.php:

// Session start
  @extract($_POST);
  if (isset($_POST['lang']))
  {
    $lang = $_POST['lang']; $lang = replace($lang);
    $_SESSION['site_lang'] = $lang;
    echo '<meta http-equiv="Refresh" content="0; URL='.$_SESSION['page_refer'].'">';
  }
  else
  {
      // Showing form with flags... which returns var 'lang'
  }
Run Code Online (Sandbox Code Playgroud)

编辑: 如果有

< input type="image" src="img/langs/en.png" width="290" height="200" border="1" name="lang" value="en" />
Run Code Online (Sandbox Code Playgroud)

在形式上它不适用于其他浏览器(除了mozilla)但如果我使用:

< input type="submit" name="lang" value="en" /> …
Run Code Online (Sandbox Code Playgroud)

php session redirect

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

Python和正则表达式

我必须解析需要的字符串.这是我在Linux控制台中执行的命令:

amixer get Master |grep Mono:
Run Code Online (Sandbox Code Playgroud)

例如,得到

Mono: Playback 61 [95%] [-3.00dB] [on]
Run Code Online (Sandbox Code Playgroud)

然后我从python-console测试它:

import re,os
print re.search( ur"(?<=\[)[0-9]{1,3}", u"  Mono: Playback 61 [95%] [-3.00dB] [on]" ).group()[0]
Run Code Online (Sandbox Code Playgroud)

得到结果:95.就是这样,我需要什么.但是,如果我将我的脚本更改为:

print re.search( ur"(?<=\[)[0-9]{1,3}", str(os.system("amixer get Master |grep Mono:")) ).group()[0]
Run Code Online (Sandbox Code Playgroud)

它将返回None-object.为什么?

python regex

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

从另一个文件执行php

我有 1 个模板文件,它包含在主文件中。

some.template

...
<?php echo '!'; ?>
...
Run Code Online (Sandbox Code Playgroud)

在主文件中,我将文件读入 1 个变量并显示它。当然,php 脚本不会在那里运行。我该怎么做,我想要什么?

谢谢

php templates

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

Php - 页面部件的名称

我需要这样命名:

site.com/about
site.com/contacts

我可以不用.htaccess吗?

php url

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

php - 复制字符串的一部分

我如何获得字符串的一部分(在符号中).例如:

$string = 'one two three';
$numSymbols = 7;
 %what should I do%
$res_string = 'one two';
Run Code Online (Sandbox Code Playgroud)

请帮忙.

php string

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

PHP - 发送脚本的url-address

我正在创建一些数据的pagging.例如,我有一个页面:

http://example.com/news.php?type=bla&smth=bla
Run Code Online (Sandbox Code Playgroud)

我有一个新闻列表,其中包含指向其他页面的链接.链接到第一页是:

http://example.com/news.php?type=bla&smth=bla&page=1

这是脚本,它创建页面链接:

print '<a href="?'.$_SERVER['QUERY_STRING'].'&page=1"><<</a>'; 
Run Code Online (Sandbox Code Playgroud)

但在点击其他页面后,链接URL非常大,看起来像:

http://example.com/news.php?type=bla&smth=bla&page=1&page=2&page=1&page=3
Run Code Online (Sandbox Code Playgroud)

我怎么能改变呢?

php url

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

标签 统计

php ×5

c++ ×4

regex ×2

templates ×2

url ×2

bind ×1

boost ×1

c++11 ×1

linux ×1

macros ×1

paintevent ×1

python ×1

qpainter ×1

qt ×1

redirect ×1

session ×1

signals ×1

string ×1

typedef ×1