在remHaskell中的行为就像%在JavaScript中。使用时钟类比时,rem无论值是正数还是负数,始终按顺时针方向进行。rem取除数的符号
divident / divisor = quotient
Prelude> 10 `rem` 3
1
Prelude> -10 `rem` 3
-1
Run Code Online (Sandbox Code Playgroud)
% 在 JavaScript 中的工作方式相同
$ node
> 10 % 3
1
> -10 % 3
-1
Run Code Online (Sandbox Code Playgroud)
mod就像rem两个值都为正时一样。唯一的区别是,当其中一个数字为负mod时,时钟会倒退,而不是顺时针方向,并采用除数的符号。
知道这一点mod并rem在两个数字都是正数时给出相同的结果,建议在 Haskell 中使用哪一个?
当我们有:
f, err := os.Open("no-file.txt")
if err != nil {
log.Panic(err)
}
defer f.Close()
Run Code Online (Sandbox Code Playgroud)
我认为使用 log.Panic(err) 更有意义。正确的?Panic() 允许延迟 f.Close() 执行,但 log.Fatal() 阻止它。
或者如果找不到文件则不会打开?我想在这种情况下,我们使用 Fatal 或 Panic 是无关紧要的。正确的?
我在 ProfStef 的教程中注意到有时消息会发送到类而不是对象。我知道类也是对象,但是如果我没有先创建类的实例,类如何查找方法?这些方法是在类级别定义的吗?类似于Java的静态方法的东西?
我在我的vimrc中有这些:
if has("autocmd")
augroup Misc
" Jump to the last known position when reopening a file
autocmd BufReadPost *
\ if line("'\"") > 1 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif
augroup END
augroup FTOptions
autocmd!
autocmd FileType cpp,java setlocal commentstring=//\ %s
autocmd FileType markdown setlocal textwidth=78 formatprg=par\ -w78
augroup END
Run Code Online (Sandbox Code Playgroud)
在markdown文件中,我想使用par进行格式化.它运行良好,但如果系统上没有安装"par",我会收到警告.我想知道是否有办法检查并且只在安装par时设置"formatprg = par\-78",否则使用VIM的默认格式.
我会很感激任何建议.
在 VIM 中,我可以使用二合字母插入不寻常的字符:
<C-K>{char1}{char2}
Run Code Online (Sandbox Code Playgroud)
例如,¿字符由?I有向图表示。
<C-K>?I
Run Code Online (Sandbox Code Playgroud)
然后我可以在一个单独的文件中为有向图定义一个自定义列表,但现在,我只想发布该文件的内容:
digraph uh 601 " ? UNSTRESSED SCHWA VOWEL
digraph uH 652 " ? STRESSED SCHWA VOWEL
digraph ii 618 " ? NEAR-CLOSE NEAR-FRONT UNROUNDED VOWEL
digraph uu 650 " ? NEAR-CLOSE NEAR-BACK ROUNDED VOWEL
digraph ee 603 " ? OPEN-MID FRONT UNROUNDED VOWEL
digraph er 604 " ? OPEN-MID CENTRAL UNROUNDED VOWEL
digraph oh 596 " ? OPEN-MID BACK ROUNDED VOWEL
digraph ae 230 " æ NEAR-OPEN FRONT UNROUNDED …Run Code Online (Sandbox Code Playgroud)