小编Vic*_*lea的帖子

如何使用不同的参数在C++中多次调用函数

我有下一个代码:

object a,b,c;
fun (a);
fun (b);
fun (c);
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何方法可以在C++ 98或C++ 11中做类似的事情来:

call_fun_with (fun, a, b, c);
Run Code Online (Sandbox Code Playgroud)

谢谢

c++ functional-programming c++11

6
推荐指数
3
解决办法
2189
查看次数

pthread_key_t vs局部变量

我正在使用Pthread在C++中开发一个多线程程序,我需要在每个线程中分配本地内存.在谷歌搜索后,我发现了pthread_key_t类型,这是一种允许您在TLS中分配内存的地图.

所以我的问题是线程函数中的局部变量和pthread_key_t之间的区别是什么?你能给出pthread_key_t的正确用法示例吗?

c c++ multithreading pthreads

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

使用gdb进行分布式软件调试

我目前正在使用linux在C++中开发一个分布式软件,它同时在20多个节点中执行.所以我找到的最具挑战性的问题之一是如何调试它.

我听说可以在单个gdb会话中管理多个远程会话(例如,在我创建gdb会话的主节点中以及在我使用gdbserver启动程序的每个其他节点中),是否可能?如果是这样,你能举个例子吗?你知道其他任何办法吗?

谢谢

c++ linux parallel-processing gdb distributed-computing

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

libtool在什么地方,什么时候使用它?

习惯了之后就舒服GNU autoconfGNU automake。我决定开始学习libtool. 但我仍然无法清楚地看到在现实世界中使用它的好处。

据我了解,主要好处是主要的可移植性问题,即系统是否支持动态库。然而,现在大多数都是主要UNIX-like OSGNU/LinuxBSD-flavors或者Mac OS很难面对OS不支持动态库或具有奇怪的库标准的情况。

所以这是我的问题,它值得使用吗libtool

c++ linux automake autotools libtool

6
推荐指数
2
解决办法
4949
查看次数

C代码与C++数据结构

我知道这不是开发项目的好方法,但由于我工作的一些原因,我致力于在C项目中集成C++(LRU缓存和哈希映射)中的一些数据结构.

到目前为止,我知道有一些方法可以在C++中调用C函数extern "C",但是从C调用C++对象(方法......)呢?

我正在使用GCC.

c c++ gcc

5
推荐指数
3
解决办法
708
查看次数

使用Automake进行单元测试

我正在使用GNU autotools与团队中的其他人一起开展项目.在项目中,我们对每个非平凡的C++类使用单元测试.我发现有单元测试的支持.为此我使用这个结构:

 ./
   + tests/
     + Makefile.am
     + classA_test.cc
     ....
     + classB_test.cc
   + src/
   + lib/
   + Makefile.am 
Run Code Online (Sandbox Code Playgroud)

问题出现了,因为我的主Makefile.am正在使用subdir-objects选项 - 注意我没有使用递归的makefile作为源文件 - 我无法将我的变量 - 例如AM_CPPFLAGS--导出到另一个Makefile.到目前为止,我使用它:

  $ make check      
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,我一直在为路径和选项遇到问题

  $ make distcheck
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,处理单元测试的标准方法是什么?

编辑:

只要我从tests/Makefile.am中删除subdir-objects,我就可以使用它.现在它抛出一些警告,但它编译.仍然似乎不适合处理单元测试

c++ automake unit-testing makefile autotools

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

Automake AM_LDADD解决方法

我想将相同的LDADD属性(单元测试库)设置为大量目标(单元测试C ++文件)。我首先尽管可能是automake具有AM_LDADD变量来将该库添加到文件中的所有目标,但事实并非如此。在一些邮件列表中,我发现了一些简短的讨论,要求添加它:http : //gnu-automake.7480.n7.nabble.com/AM-LIBS-AM-LDADD-td3698.html

我的问题是,您如何处理?有什么方法可以避免手动将LDADD属性添加到每个目标?

到目前为止,我的Makefile.am看起来像:

 test1_SOURCES = ...
 test1_LDADD = -llibrary 
  ...
  ...
 test20_SOURCES = ...
 test20_LDADD = -llibrary 
Run Code Online (Sandbox Code Playgroud)

c++ automake unit-testing makefile autotools

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

第一行中的Makefile注释标题

我的问题非常简短,我在许多makefile中看到过这个说明:

# -*- MakeFile -*- 
Run Code Online (Sandbox Code Playgroud)

我想知道它是什么,它是一些vim设置?谢谢!

vim emacs makefile

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

如何并行启动Ruby命令

我正在编写一个终端程序,使用ruby作为一个用C++和Java编写的程序的启动器,它应该在分布式系统中执行.

我想在ruby中翻译这条指令:

for i in {1..40}; do
  ssh node$i program & #note & so that that process is detached
done
Run Code Online (Sandbox Code Playgroud)

这是我的红宝石代码:

class Launcher
   # Other method that we can ignore
   def order(command)
     @nodelist.each {#Do something here}
   end 
end 
Run Code Online (Sandbox Code Playgroud)

我想创建一个线程池,每个线程执行该命令.这是合适的方式吗?因为我研究线程不能执行"exec",因为线程共享相同的内存地址.

ruby linux multithreading exec

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

使用Automake为bin_SCRIPTS中的每个文件应用命令

在我的项目中,我有一组bash脚本,它们与C/C++二进制文件一起复制到安装根目录.

问题是我必须在安装之前为每个BASH脚本运行一个命令.更具体的是,我必须用autoconf输出变量替换变量:

 anyfile sed 's/ECLIPSE_PATH/@prefix@/g'
Run Code Online (Sandbox Code Playgroud)

这是在Makefile.am中定义脚本的地方

 bin_SCRIPTS = file1.sh file2.sh
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何标准的方法来解决这个问题.如果不是,我想来一些黑客来处理它.谢谢!

UPDATE

我想出了一个解决它的黑客,这是Automake的配方:

install-data-hook:
  input_path="@prefix@";                          \
  path=$${input_path//\//\\/};                    \
  for i in @bindir@/*; do                         \
    if [[ ! `file $${i}` =~ "ELF" ]]; then        \                                                                                                                                                                  
      sed -i "s/\$$ECLIPSE_PATH/$${path}/g" $$i;  \
    fi                                            \
  done
Run Code Online (Sandbox Code Playgroud)

但我仍然想知道是否有标准的方法来做到这一点

c++ bash automake autotools m4

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

JQUERY&php发布错误500(服务器内部错误)

我在开发的webapp中遇到错误,我确信这是一个非常基本的错误.

每当我在网上运行此代码时,chrome debbuger都会返回此错误:

 POST http://my_ip/server_wrapper.php 500 (Internal Server Error) 
Run Code Online (Sandbox Code Playgroud)
  1. PHP服务器正常工作,phpinfo()正确返回整个信息
  2. Web服务器是Apache.
  3. Iptables完全打开,我只是在局域网下使用它.
  4. Web根目录中所有文件的权限是755.

这是JQUERY,js文件片段"

this.post    = function () {
 $.post ("server_wrapper.php",
  {
   _id:          this.id,
   _question:    this.question,
   _type:        "none"
  },
  function (data, status) {
   alert ("DATA: " + data + " status: " + status);
  }
 );
}
Run Code Online (Sandbox Code Playgroud)

这是php文件:

<?php

if (isset($_POST["_question"]) && isset($_POST["_type"]) && isset($_POST["_id"])) {

$question = $_POST["_question"];
$type     = $_POST["_type"];
$id       = $_POST["_id"];

$con      = mysqli_connect ("localhost", "user", "pass", "database");

if (mysqli_connect_errno($con)) {
    echo "Failed to connecto to …
Run Code Online (Sandbox Code Playgroud)

html php mysql ajax jquery

0
推荐指数
2
解决办法
7897
查看次数