魔术师在ruby中如何 comments ​​ 作品我说的是:

# Encoding: utf-8

这是预处理指令吗?这种 struct 还有其他用途吗?

推荐答案

出于某种原因,人们称这条线为magic comment.在处理源代码之前,解释器读取这一行并设置正确的编码.我相信口译语言很常见.至少Python使用了相同的方法.

您可以通过多种不同的方式指定编码(其中一些方式可以被编辑器识别):

# encoding: UTF-8
# coding: UTF-8
# -*- coding: UTF-8 -*-

你可以在this article中阅读一些关于源代码编码的有趣内容.

据我所知,唯一具有类似 struct 的是shebang,但它通常与Unix shell相关,而不是特定于Ruby的.

Ruby相关问答推荐

设计登录根路由rails 3

Ruby 符号到类

构造Ruby的现代方法是什么?

以编程方式获得完整的 Ruby 版本?

检测 ruby​​ 是否在 Windows 上运行的正确方法是什么?

带有索引的 Ruby `each_with_object`

Sublime Text 2 中的 RubyTest

rbenv 没有显示可用的 ruby​​ 版本

使用 Homebrew 安装 Ruby

差异 - unless/if

全新安装 RVM 和 Ruby 2.1.1 - dyld 库/路径错误

将 2 元素数组的数组转换为哈希,其中重复键附加附加值

比较ruby中的两个字符串

可可豆荚安装在iOS项目上不起​​作用

如何从 SystemStackError 中获取回溯:堆栈级别太深?

Ruby 的所有/最佳列表?

等号 ('=') 放在方法定义中的方法名称之后有什么作用?

Ruby:捕获异常后继续循环

使用 Liquid 标记在 Jekyll 中获取今天的日期

在 Jekyll 中使用 Live Reload