小编Mil*_*sen的帖子

是否可以动态加载Go代码?

正如标题所说,我想根据运行时可用的信息动态加载Go包(或不加载).

目标是允许用户通过添加新的本机脚本命令的自定义包扩展程序.目前每次添加新命令或想要禁用某些命令时,我都需要编辑程序并重新编译,而如果我可以创建某种dll或类似的东西,那么我可以创建一个"import"脚本命令来搜索和加载命名的命令库.

好奇的是,有问题的程序是基于自定义命令的脚本库,我用它来处理各种各样的事情.

我提前做了一些搜索,结果看起来不太好,但我找不到清楚的没有.

go

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

如何定义VALUE和TO

我想要实现的第四字VALUETO(在仿真计算机一个RPC/8 的Minecraft MOD).只要我在编译时不使用它,我最好的尝试就会给我一组工作正常的单词.更具体的VALUE工作,但TO没有.

: VALUE CREATE , DOES> @ ;
: TO ' 3 + ! ;
Run Code Online (Sandbox Code Playgroud)

我已经尝试了一切我能想到的工作,我的最佳尝试让我得到了这个:

['] NameOfAValue 3 + !
Run Code Online (Sandbox Code Playgroud)

需要注意的是该处理器是不是一个纯粹的6502,但一个65EL02的自定义变种65816.

编辑#1:不知怎的,我忘了调用CREATE的价值.应该一直都在那里.编辑#2:我也有3+在TO调换了...哎呀.它本来应该是另一种方式.

6502 forth

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

Golang截断具有特殊字符的字符串而不会破坏数据

我正在尝试编写一个函数来截断golang中带有特殊字符的字符串.一个例子如下

"H???????üöžå???¤"

但是我根据允许的字符数量在中间切割它.这会导致数据损坏.

结果就像

H???????üöžå?...

?不应该存在.我们如何检测这些特殊字符并根据这些字符的长度将其拆分?

package main

import (
    "fmt"
    "regexp"
)

var reNameBlacklist = regexp.MustCompile(`(&|>|<|\/|:|\n|\r)*`)
var maxFileNameLength = 30

// SanitizeName sanitizes user names in an email
func SanitizeName(name string, limit int) string {

    result := name
    reNameBlacklist.ReplaceAllString(result, "")
    if len(result) > limit {
        result = result[:limit] + "..."
    }
    return result
}



func main() {
  str := "H???????üöžå???¤"
    fmt.Println(str)

    strsan := SanitizeName(str, maxFileNameLength)
    fmt.Println(strsan)

}
Run Code Online (Sandbox Code Playgroud)

utf-8 special-characters go

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

多层次回归的恐慌

有没有更好的方法从长序列的递归函数调用返回?我目前恐慌的标记值如下:

type exitNow int
...
panic(exitnow(0))
Run Code Online (Sandbox Code Playgroud)

一次返回多个级别.在根函数中,对恢复的调用执行一般错误处理(将恐慌转为错误)并将exitNow作为特殊情况处理.

这很好,我只想知道是否有更好的方法.

我已经将bool返回值用于相关目的,但是使用另一个则会很痛苦.(每次调用每个函数都需要一个if语句)

如果它有助于任何这是一个隐形正确的解析器的实现的一部分.

go

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

一个简单的C程序,使用libvlc播放mp3

我是一名普通的C/C++程序员.最近我做了一个项目,制作一个智能播放列表的媒体播放器,它将像Zune的SmartDj一样工作.我决定使用libvlc进行游戏.

我之前从未编写过开源软件,所以我对git和所有内容一无所知.你能帮我写一个至少一个C程序来播放mp3文件吗?

我应该从哪里开始?如何从mp3文件中提取歌曲的艺术家和其他信息?

问候.

c c++ mp3 media-player libvlc

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

标签 统计

go ×3

6502 ×1

c ×1

c++ ×1

forth ×1

libvlc ×1

media-player ×1

mp3 ×1

special-characters ×1

utf-8 ×1