当前位置: 首页 > 面试题库 >

Go“导入”语法是否特殊和独特?

常乐
2023-03-14
问题内容

http://golang.org/ref/spec#Import_declarations

import "package1"

import ("package1";"package2")

import (
        "package1"
        "package2"
       )

“ import”语法是专门用于导入软件包的吗?看起来像一个使用“;”的函数调用
而不是“,”进行参数化。似乎它甚至可能是红宝石风格的方法调用(即:sans“()”)

PS 以为我想请他们对此有所了解。我真的很喜欢Go的工作,但是它的某些语法似乎有些不一致,有时有些冗长。我不知道要为它创建一个预处理器(像C
是/是C一样)来清理某些语法会多么困难。称之为Go (速度更快)。我认为Objective C
2.0是改善程序员工作流程的一个很好的例子(例如:字典/数组/数字文字)。Go ++在概念上也类似于exlixir-
lang.org(在Erlang之上的语法增强)。


问题答案:

是的import很特别。它必须位于文件的顶部,并且其参数始终是文字。之所以必须这样做,是因为go在尝试管理依赖项以加快构建时间方面做了大量工作。

它也不能只是常规环境,因为它将变量注入当前作用域,这是其他函数无法做到的。

至于语法,是的,有些部分并不完全令人满意。但这对我和我遇到的大多数其他编写Go的人来说是一个很小的问题。从好的方面来说,语法非常容易解析,因此工具相对简单,这就是为什么我担心只为几次按键更改语法的原因。



 类似资料:
  • 本文向大家介绍Golang import 导入包语法及一些特殊用法详解,包括了Golang import 导入包语法及一些特殊用法详解的使用技巧和注意事项,需要的朋友参考一下 package 的导入语法 写 Go 代码的时经常用到 import 这个命令用来导入包,参考如下: 然后在代码里面可以通过如下的方式调用: fmt 是 Go 的标准库,它其实是去 GOROOT 下去加载该模块,当然 Go

  • 我有一个描述表达式的语法(原文,对吗?)。我想在其他语言中使用这种语言。 例如,其他语言. g4: 如果我使用,那么它会生成一个有效的解析器,但它不会生成或使用,而是生成和使用。这意味着我无法创建接受“ExpressionContext”并在其他项目中重用它们的方法。 ANTLR4有什么特性可以让它工作吗? 换句话说,我不想“导入”语法表达式,而是解析器和词法分析器。

  • 我必须使用SSIS从数据库导出CSV文件 这很容易做到,但当我必须将同一个CSV文件导入另一个数据库(从另一台服务器)时,问题就来了,因为我有两列,其中包含以下字符:逗号(,)、撇号(')、分号(;),冒号(:),竖线(|)。我不知道哪个应该是平面文件连接的设置,哪个应该是标题行分隔符、行分隔符、列分隔符。。。以便执行这两个操作(导出,然后导入)。 我尝试了许多组合,但我仍然得到错误,如: [平面

  • 主要内容:默认导入的写法,导入包后自定义引用的包名,匿名导入包——只导入包但不使用包内类型和数值,包在程序启动前的初始化入口:init,理解包导入后的init()函数初始化顺序可以在一个 Go语言源文件包声明语句之后,其它非导入声明语句之前,包含零到多个导入包声明语句。每个导入声明可以单独指定一个导入路径,也可以通过圆括号同时导入多个导入路径。要引用其他包的标识符,可以使用 import 关键字,导入的包名使用双引号包围,包名是从 GOPATH 开始计算的路径,使用 进行路径分隔。 默认导入的写

  • 问题内容: 我正在尝试实现一组功能。上下文是事件服务器;我想防止(或至少警告)为一个事件多次添加同一处理程序。 我已经读过,由于易于检查成员资格,因此映射是惯用的集: 我在使用此范式进行功能时遇到了一些麻烦。这是我的第一次尝试: 很显然,这是行不通的:在Go中,函数不是引用类型,尽管有些人会告诉你它们是。 我有证明,尽管我们不需要它,因为语言规范指出除映射,切片和指针以外的所有内容都是按值传递的。

  • 主要内容:语法简单,并发模型,内存分配,垃圾回收,静态链接,标准库,工具链Go语言也称为 Golang,是由 Google 公司开发的一种静态强类型、编译型、并发型、并具有垃圾回收功能的编程语言。 接下来从几个方面来具体介绍一下Go语言的特性。 语法简单 抛开语法样式不谈,单就类型和规则而言,Go 与 C99、C11 相似之处颇多,这也是Go语言被冠以“NextC”名号的重要原因。 Go语言的语法处于简单和复杂的两极。C语言简单到你每写下一行代码,都能在脑中想象出编译后