小编Yas*_*oji的帖子

GNU Smalltalk与Squeak的兼容性如何

我正在开发一个吱吱声的应用程序,它根本不需要图形,它只是数据操作.问题是我在一个相当保守的环境中工作,我不认为我能够向我的经理们销售一个吱吱叫的应用程序(我觉得它们是明亮的颜色,圆形的界面和一般的"那是什么 - 那是 - 那个"吱吱的感觉会吓跑他们." 所以我正在考虑在GNU Smalltalk下运行应用程序,因为更"传统"的命令行界面不太可能吓跑利益相关者.

因此,任何人都可以提供或指向我,Squeak和Gnu Smalltalk之间的列表或一组功能/类是否兼容.换句话说,将应用程序从一个移植到另一个应用程序有多难(再次假设它是非图形的,所以不需要担心形态)?

谢谢!

porting smalltalk squeak

11
推荐指数
2
解决办法
2388
查看次数

Ruby:如何消除“警告:'*'解释为参数前缀”?

如何从以下代码中删除“警告:'*'解释为参数前缀”?

hash = {"a" => 1,
        "b" => 2,
        "s" => 3,}

if "string".start_with? *hash.keys then
  puts "ok"
else
  puts "ng"
end
Run Code Online (Sandbox Code Playgroud)

当我运行上面的代码时,我得到:

$ ruby -w /tmp/a.rb
/tmp/a.rb:5: warning: `*' interpreted as argument prefix
ok
Run Code Online (Sandbox Code Playgroud)

解决此警告的最佳方法是什么?

我试图hash像这样把括号括起来:

hash = {"a" => 1,
        "b" => 2,
        "s" => 3,}

if "string".start_with? (*hash.keys) then
  puts "ok"
else
  puts "ng"
end
Run Code Online (Sandbox Code Playgroud)

然后您得到:

$ ruby -w /tmp/a.rb
/tmp/a.rb:5: syntax error, unexpected *
if "string".start_with? (*hash.keys) then
                          ^
/tmp/a.rb:5: syntax error, unexpected ')', …
Run Code Online (Sandbox Code Playgroud)

ruby splat

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

如何检查socketcan中的总线状态

我在嵌入式 Linux 上使用Flexcan 驱动程序,并且有C程序控制 CAN 消息。在我的C程序中,我需要检查 can 总线的状态,例如buss-offerror-active。我可以使用 linux 命令, ip -details -statistics link show can0结果如下:

2: can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP mode DEFAULT group default qlen 10
    link/can  promiscuity 0 
    can state *ERROR-ACTIVE (berr-counter tx 0 rx 0) restart-ms 100 
          bitrate 250000 sample-point 0.866 
          tq 266 prop-seg 6 phase-seg1 6 phase-seg2 2 sjw 1
          flexcan: tseg1 4..16 tseg2 2..8 sjw 1..4 brp 1..256 brp-inc 1 …
Run Code Online (Sandbox Code Playgroud)

can-bus embedded-linux socketcan

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

C++ ifstream UTF8的第一个字符

  1. 为什么保存为UTF8的文件(在Notepad ++中)在我在c ++程序中打开它的fstream开头有这个字符?

    '╗┐

    我不知道它是什么,我只知道当我保存到ASCII时它不存在.更新:如果我将它保存为UTF8(没有BOM),它就不存在了.

  2. 如何在c ++中检查文件的编码(ASCII或UTF8,其他所有内容将被拒绝;)).这正是这些人物吗?

谢谢!

c++ ascii fstream byte-order-mark utf-8

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

gstreamer appsrc测试应用程序

我正在尝试学习gstreamer appsrc插件,从我写的传输流解复用器播放AV(我知道插件已经可用,我想自己动手去学习).我从MPEG传输流中提取了音频和视频基本流; 现在我必须将它推送到appsrc插件并使用gst管道播放(这部分我还不清楚:关于使用哪些插件 - 任何提示都将受到高度赞赏).

我找到了一个使用appsrc示例代码,但是当我运行它时,没有输出.我验证start_feedread_data功能确实调用.在read_data功能中,有一个定时器检查来决定是否推送数据:

ms = g_timer_elapsed(app->timer, NULL);
printf("ms %f\n", ms);
if (ms > 1.0/20.0) {
Run Code Online (Sandbox Code Playgroud)

我不知道这个计时器的用途,但是值ms总是大约为0.035,数据永远不会被推入appsrc.所以我将if条件更改为if(ms > 0.03)但后来我收到了内部数据流错误:

ms 0.033747
ms 0.000010
ERROR from element mysource: Internal data flow error.
Debugging info: gstbasesrc.c(2582): gst_base_src_loop (): /GstPipeline:pipeline0/GstAppSrc:mysource:
streaming task paused, reason not-negotiated (-4)
Run Code Online (Sandbox Code Playgroud)

有人可以告诉我如何调整这个以观看视频吗?链接网站的代码如下.

#include <gst/gst.h>
#include <gst/app/gstappsrc.h>

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#include <gdk-pixbuf/gdk-pixbuf.h>

GST_DEBUG_CATEGORY (appsrc_pipeline_debug);
#define GST_CAT_DEFAULT appsrc_pipeline_debug

typedef struct _App …
Run Code Online (Sandbox Code Playgroud)

c gstreamer gstreamer-0.10

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