RVM安装在我的机器上(运行Mac OSX 10.6.8),运行正常,运行正常.奇怪的是,为了运行它,我必须使用source ~/.rvm/scripts/rvm每个新的会话.我尝试从中创建一个符号链接/opt/local/bin/rvm,但是当它运行时它什么也没做.我也试着从创建一个符号链接~/.rvm/bin/rvm到/opt/local/bin/rvm,当我运行rvm在终端会显示帮助页面,符合市场预期.但是当我尝试rvm use some_ruby_version它时总是显示"RVM不是一个功能,用'rvm use ...'选择红宝石将不起作用." 我怎样才能解决这个问题?
我的目标是让它达到我不必每次会话都输入源命令的程度,并且由于某种原因~/.profile不能执行.
正如问题标题中基本上所述,Ruby字符串上是否有一个等价于String#Scan的方法,但它不会返回每个匹配的列表,而是返回一个MatchDatas 数组?例如:
# Matches a set of characters between underscore pairs
"foo _bar_ _baz_ hashbang".some_method(/_[^_]+_/) #=> [#<MatchData "_bar_"&rt, <MatchData "_baz_"&rt]
Run Code Online (Sandbox Code Playgroud)
或者我可以得到相同或类似结果的任何方式都会很好.我想这样做是为了找到"字符串" Ruby字符串,如内的位置和范围"goodbye及"world"内部"'再见’残酷'世界’".
我怎么编译使用JRuby应用程序莺是不是在网络上呢?这总是在我尝试时发生的事情:
$ warble
warble aborted!
No executable script found
Tasks: TOP => jar:files
(See full trace by running task with --trace)
Run Code Online (Sandbox Code Playgroud)
我必须错误地使用它.有谁知道如何正确编译JRuby应用程序?
当我下载MonoGame(我将在Mac上使用它代替XNA)并解压缩时,所有MonoDevelop解决方案文件都被命名MonoGame.Framework.[PLATFORM NAME].sln,其中[PLATFORM NAME]包括操作系统的名称.并且教程中的代码对于每个平台都是不同的,因此对于MonoGame应用程序来说,要在另一台机器上运行,它必须被移植.它是否正确?如果是这样,Mono还有哪些其他版本的XNA,最好是在Xbox 360上运行?我见过MonoXNA,但它似乎不够成熟,可以在这篇文章中使用.
如何在静态字段中存储Type,以便我可以执行类似的操作(注意:只是一个示例,在伪代码中)?:
public class Logger
{
public static Type Writer;
public static void SetWriter(Type @new)
{
Writer = @new;
}
public static void Write(string str)
{
Writer.Write(str);
}
}
Run Code Online (Sandbox Code Playgroud) 所以,我有一个我想在事件触发器上执行的函数,但我想稍后删除它.我该怎么做?我知道F#事件具有Add将函数添加为处理程序的方法,但是您无法删除此函数.我理解,但我找不到如何创建任何委托!(嗯,是的type Foo = delegate of type1 -> type2,但我不明白它的使用...)
编辑:这是一个更清晰的例子,我想做什么,在代码中:
// Define and publish event
let _someEvent = new Event<string>()
let SomeEvent = someEvent.Publish
// Normally, I'd do this to use it:
SomeEvent.Add (fun arg -> printfn "Argument: %s" arg)
// Trigger the event
someEvent.Trigger "Hello world"
Run Code Online (Sandbox Code Playgroud)
但我的问题是我想在某个时候删除这个钩子.我知道这可能与代表有关......只是不知道如何做到这一点.
在Slick库(基于LWJGL)中,您可以在加载图像后缩放图像getScaledCopy,但它将应用消除锯齿.我希望边缘保持粗糙; 我正在制作像素艺术品.我怎样才能做到这一点?
如何在Ruby中获取BasicObject实例的类名?例如,说我有这个:
class MyObjectSystem < BasicObject
end
puts MyObjectSystem.new.class
Run Code Online (Sandbox Code Playgroud)
如何使此代码成功?
编辑:我发现Object的实例方法class定义为return rb_class_real(CLASS_OF(obj));.有没有办法从Ruby使用它?
我想在功能上代表一种队列数据结构,但我还没有真正得到任何结论.我看过拉链,但它们似乎不是正确的结构.
具体来说,我试图表示一系列延迟线(对于回音或混响等音频效果),所以需要的功能如下:
对于我的特殊用途,这两个操作将结合使用以保持队列的大小恒定,但这种约束不是基本的.我可以使用一个列表,但我认为必须有一些更清洁的东西.表示此类型的最佳方式是什么?
我正在使用F#,但欢迎使用任何语言.
在C#中,您可能会看到以下内容:
[<DllImport("myUnmanagedDLL.dll")>]
Run Code Online (Sandbox Code Playgroud)
或类似的行(但没有大于/小于符号):
[assembly: AssemblyTitle("MyProject")]
Run Code Online (Sandbox Code Playgroud)
我知道第一个被称为属性(它有gt和lt标志),可用于向方法,类型等添加一种元数据,但第二种语法是什么意思?我正在尝试将这种语法翻译成F# - 即,这一行:
[MonoMac.Foundation.Register("AppDelegate")]
Run Code Online (Sandbox Code Playgroud) 谁能在这里告诉我Ruby宝石rubysdl和ruby-sdl-ffi速度差异之间的区别?如果是这样,你更喜欢哪一个?我想知道我写的是我的宝石,Rubydraw(位于这里).
提前致谢!
假设我有一个F#区别联合定义如下:
type Union<'T> = | A of 'T | B | C
Run Code Online (Sandbox Code Playgroud)
如果我有B这个地方'T是int例如,我将如何转换到另一个B地方'T是string?我有一个类似于此的联合,但有更多的情况,目前我模式匹配如下:
let convert u =
match u with
| A(x) -> // some fancy logic here
| B -> B
| C -> C
Run Code Online (Sandbox Code Playgroud)