小编Asl*_*986的帖子

便携式C++多线程

我正在用C++语言编写一个使用多线程的库.由于我正在开发它在Windows中,我使用的方法和"WINDOWS.H"(如数据结构CreateThread,HANDLE WINAPI等等).

现在我想在Windows和Linux中使这个代码可执行; 你能告诉我一些线程实现吗?

这个应用程序的主要要求是执行速度,所以我需要一些快速的实现.

预先感谢.

c++ multithreading portability

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

绘制软件架构的工具

有人知道是否存在一些可以让我轻松绘制软件架构的免费软件?

我不是指UML,工作流程,图表或其他技术内容但是"面向表示"的绘图,就像这样.

谢谢.

drawing presentation

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

平等的?和记录类型

假设我有以下方案(R6RS)代码:

(define-record-type typeA
 (fields
  (mutable A)))
Run Code Online (Sandbox Code Playgroud)

我创建了两条记录:

(define X (make-typeA 123))
(define Y (make-typeA 123))
Run Code Online (Sandbox Code Playgroud)

我不明白为什么(equal? X Y)(equal? (make-typeA 123) (make-typeA 123))返回#f

我阅读了 R6RS 标准(第 11.5 节),但我并没有真正理解它。

scheme r6rs

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

继续计划

我认为我得到了一个延续(一般),但我无法理解它是如何在Scheme中使用的.

考虑这个例子(来自wikipedia call/cc)

(define (f return)
  (return 2)
  3)
(display (call/cc f)) ;=> 2
Run Code Online (Sandbox Code Playgroud)

我不明白为什么:

  • 延续是隐含的吗?对吗?

  • 在这种情况下如何继续?

scheme continuations

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

构造函数比较

可能重复:
在构造函数中初始化,最佳实践?

我是C++的新手.

假设我们有这个类定义:

Class MyClass {
  int a;
  int b;

  //....
}
Run Code Online (Sandbox Code Playgroud)

我想知道两个类构造器之间的区别是什么:

public: 
    MyClass(int a, int b) : a(a), b(b) {}
Run Code Online (Sandbox Code Playgroud)

(我会说Java风格):

MyClass(int a, int b) {

this->a = a;
this->b = b;
}
Run Code Online (Sandbox Code Playgroud)

我想第一个在C++中更好; 对?为什么?

c++

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

阅读XML文件中的文本内容

假设我有一个如下所示的XML文件:

<conf>
  <something>
    blablabla
  </something>
</conf>
Run Code Online (Sandbox Code Playgroud)

我想要检索字符串 blablabla

我尝试过:

val data = XML.loadFile("conf.xml")
val st = data \\ "conf" \\ "something"
println(st)
Run Code Online (Sandbox Code Playgroud)

但作为输出我有:

<something>blablabla</something>
Run Code Online (Sandbox Code Playgroud)

我添加了代码行:

st match {
      case <something>{ txt }</something> => println(txt)
}
Run Code Online (Sandbox Code Playgroud)

但我有一个scala.MatchError.

我该怎么办?

你能帮我一下吗?

xml scala

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

在Postgresql中创建一个常量

假设我有这个查询:

select * 
from myTable
where myTable.myCol in (1,2,3)
Run Code Online (Sandbox Code Playgroud)

我想这样做:

with allowed_values as (1,2,3)
select * 
from myTable
where myTable.myCol in allowed_values
Run Code Online (Sandbox Code Playgroud)

它在第一行给我一个语法错误,你能帮我修复它吗?

postgresql

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

相等字符串之间的差异

我正在尝试Racket使用parser-tools.编写一个简单的解析器.我得到了一个我无法解释的行为(我是一个球拍新手,也许这是微不足道的).

请考虑以下代码:

#lang racket
(require parser-tools/yacc
         parser-tools/lex
         (prefix-in : parser-tools/lex-sre))


(define-tokens value-tokens   ;;token which have a value
  (STRING-VALUE ))
(define-empty-tokens op-tokens ;;token without a values
  (EOF))
(define-lex-abbrevs ;;abbreviation 
  [STRING (:+ (:or (:/ "a" "z") (:/ "A" "Z") (:/ "0" "9") "." "_" "-"))]
  )


(define lex-token
  (lexer
   [(eof) 'EOF]
   ;; recursively call the lexer on the remaining input after a tab or space.  Returning the "1+1")
   ;; result of that operation.  This effectively skips all whitespace. …
Run Code Online (Sandbox Code Playgroud)

racket

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

在逗号分隔的字符串中合并字符串列表

我需要编写一个软件,给定一个字符串列表,该软件返回一个由输入列表元素的逗号分隔串联而成的新颖字符串。

(comma-con (list "a" "b" "c"))  ;=> "a,b,c"
Run Code Online (Sandbox Code Playgroud)

我很想编写Scheme惯用代码。

到目前为止,我写道:

(define (comma-con l)
   (foldr
         (? (x y) (if (string? y) (string-append x "," y) x))
         '()
         l))
Run Code Online (Sandbox Code Playgroud)

可以,但是似乎有点脏。有没有一种更好的方法来编写它,例如避免使用“ if”?

scheme higher-order-functions racket

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

按行元素的总和/平均值过滤行

在R脚本中,我有一个格式的DataFrame:

 V1           V2           V3           V4
1  HIAT1 3.917271e-05 4.278916e-05 3.793761e-05
2  SASS6 2.008972e-06 1.890391e-06 2.168946e-06
3 TRMT13 4.397712e-06 4.724036e-06 4.009512e-06
Run Code Online (Sandbox Code Playgroud)

第一列是String名称,以下是数值.值的总数不是先验已知的,而是取决于作为脚本输入提供的数据集.

我想只提取从第二个到最后一个元素的总和(或平均值)大于某个阈值的行.

如何以R风格做到这一点?

r dataframe

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