小编who*_*oan的帖子

在Enterprise Architect中使用C++ STL

如何在Enterprise Architect中使用部分C++ STL?
能够将某些类属性指定为std::string或使用std::auto_ptr(或甚至std::tr1::shared_ptr)作为类型将是很好的.

另一个有趣的事情是怎样一个能够整合容器类型,如std::vectorstd::map成EA.

c++ uml stl std enterprise-architect

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

为什么dotmemory在尝试连接到实时进程时无法收集内存流量和堆栈跟踪信息

我有一个asp.net应用程序,在应用程序可以提供服务之前,它需要构建一个非常大的本地缓存.我想描述一下代码的特定部分.我的应用程序非常庞大,我不想完全分析它.我只想分析服务请求的代码路径.

我开始用来dotMemory跟踪我的应用内存使用情况.当我尝试附加到进程时,

对话框中两个复选框的profiler选项:1)收集每个第N个对象2)收集内存流量无法检查.

dotMemory尝试连接到实时进程时,为什么无法收集内存流量和堆栈跟踪信息?

我也尝试使用profiler API.

private void SomeMethod()
{
    // Here goes your code
    // ...

    // Get a snapshot
    if (MemoryProfiler.IsActive)
        MemoryProfiler.Dump();
}
Run Code Online (Sandbox Code Playgroud)

我可以获得一个快照,但应用程序首先运行,然后在此之后关闭探查器.我也无法获得内存流量.

memory profiling

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

chdir() - 没有这样的文件或目录

int main(int argc, char **argv)
{
  char input[150];
  char change[2] = "cd";
  char *directory;

  while(1) {
      prompt();
      fgets(input, 150, stdin);

      if(strncmp(change, input, 2) == 0) {
          directory = strtok(input, " ");
          directory = strtok(NULL, " ");

          printf(directory);
          chdir(directory);
          perror(directory);

      }

      if(feof(stdin) != 0 || input == NULL) {
          printf("Auf Bald!\n");
          exit(3);
      }
  }
}
Run Code Online (Sandbox Code Playgroud)

当我开始这个并输入"cd test"时,我得到"没有这样的文件或目录".但是有一个目录"test".

在Arch Linux上运行.

c chdir

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

jSon对象计数

我有一个st从Web服务返回的字符串.我将字符串转换为对象,我如何计算否.里面的数组?(对于这种情况,它是2)

var st = "{[{"Name": "fake", "Address": "add"]},[{"Name": "fake", "Address": "add"}]}";  
var json = eval(st);  
Run Code Online (Sandbox Code Playgroud)

json.length总是回归1

javascript json

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

捕获期望ssh输出到变量

嘿,我是bash脚本的新手,想知道如何将ssh命令的输出捕获到bash变量中?我环顾四周,似乎无法正确行事.我尝试过put $expect_out(buffer)但是当echo它说变量不存在时

我知道响应应该只是一行,如果我想将它保存到变量中response,那么echo我该怎么做?

ssh bash expect capture

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

linux内核如何从Device树中获取数据?

我是Linux内核的初学者.
据我所知,在旧版本的内核中有一个特定于板的文件,其中所有设备都已注册(通过使用某些API platform_get_register等).
在较新版本的内核中,设备所需的信息将通过设备树传递.
我的问题是内核如何从设备树中获取驱动程序的信息?设备如何通过设备树在内核中注册?

linux-device-driver linux-kernel device-tree

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

BASH while 循环中比较两个变量

我试图在嵌套while循环中比较 bash 中的两个变量,但遇到问题:

[: 1, : 需要整数表达式。

我的代码:

#!/bin/bash

a="10",b="5"
i="1", j="1"
while [ $i -ne $a ]
do
        while [ $j -ne $b ]
        do
                echo"In Child Loop $j Times"
                ((j++))
        done
        j="1"
        echo"In Parent Loop $i Times"
        ((i++))
done
Run Code Online (Sandbox Code Playgroud)

bash

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

如何从另一个文件中查找包含任何字符串的行?

我有 2 个 csv 文件。文件 A,具有多列。文件 B,只有一栏。例如。:

文件A:

chr1 100000 100022 A C GeneX
chr2 200000 200033 X GeneY
chr3 300000 300055 G A GeneZ
Run Code Online (Sandbox Code Playgroud)

文件B:

GeneY
GeneZ
Run Code Online (Sandbox Code Playgroud)

我希望我的输出是:

chr2 200000 200033 X GeneY
chr3 300000 300055 G A GeneZ
Run Code Online (Sandbox Code Playgroud)

我尝试过使用grep(会崩溃)和其他。
我确信这个问题一定有一个非常简单的答案,但我只是看不到!

shell grep intersect

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

指定launch :: async时std :: async不执行

也许我错过了std::asyncC++ 11中新的正确用法,但是这句话(在cppreference.com上):

如果设置了异步标志(即policy&std :: launch :: async!= 0),则async在单独的执行线程上执行函数f,就好像由std :: thread(f,args ...)生成的一样.除了如果函数f返回一个值或抛出异常,它将存储在可通过std :: future访问的共享状态中,async返回给调用者.

让我觉得我的线程应该立即开始这个声明:

std::async(std::launch::async, MyFunctionObject());
Run Code Online (Sandbox Code Playgroud)

无需等待呼叫std::future::get().这似乎不是这种情况(使用MSVC 13进行编译).如果这不是由这个语句本身触发的,如果我不关心std::future对象的返回值,应该如何触发?

例:

#include <thread>
#include <iostream>
#include <array>
#include <future>

static std::mutex write_mutex;

class Cpp11Threads {
public:
    // Function operator for Function-Object
    void operator()() {
        const int num_threads = 50;

        // Static std array
        std::array<std::thread*, num_threads> worker_threads;

        // Range based
        for (std::thread*& thread : worker_threads) {

            // Lambda expression
            thread = new std::thread(
                [] { …
Run Code Online (Sandbox Code Playgroud)

c++ multithreading asynchronous c++11

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

如何用sed在正则表达式中减去?

我需要从不需要的字符中释放一个字符串.在这个例子中,我想从b中过滤掉所有+的和所有-的,并将结果写入c.所以如果b是,c应该是.+fdd-dfdf++-+

read b
c=$(echo $b | sed 's/[^(\+|\-)]//g')
Run Code Online (Sandbox Code Playgroud)

但是当我运行脚本时,控制台说:

sed:-e expression#1,char 15:无效的范围结束

原因在于\-我的正则表达式.我该如何解决这个问题并说,我想过滤掉所有-的问题?

expression sed filter

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