小编tah*_*rqa的帖子

将结构指针强制转换为Golang中的接口指针

我有一个功能

func doStuff(inout *interface{}) {
   ...
}
Run Code Online (Sandbox Code Playgroud)

此函数的目的是能够将任何类型的指针视为输入.但是,当我想用​​结构的指针调用它时,我有一个错误.

type MyStruct struct {
    f1 int
}
Run Code Online (Sandbox Code Playgroud)

打电话的时候 doStuff

ms := MyStruct{1}
doStuff(&ms)
Run Code Online (Sandbox Code Playgroud)

我有

test.go:38: cannot use &ms (type *MyStruct) as type **interface {} in argument to doStuff
Run Code Online (Sandbox Code Playgroud)

我该如何投射&ms兼容*interface{}

struct pointers casting interface go

26
推荐指数
1
解决办法
3万
查看次数

Emacs,use-package和package-refresh-contents

在我的init.el中,我想使用"use-package"懒洋洋地加载我的模式并加速我的emacs启动.

我想use-package自动从elpa/melpa /下载我的模式...感谢包lib.

但似乎我需要在每次使用之前执行一个(package-refresh-contents),否则use-package会引发错误.

(error "Package `deft' is not available for installation")
Run Code Online (Sandbox Code Playgroud)

我的conf是

(require 'use-package)
(package-refresh-contents) ; take forever at each emacs start
(use-package deft 
  :ensure t)
Run Code Online (Sandbox Code Playgroud)

但是(包 - 刷新内容)需要永远.我们不能将(package-refresh-contents)委托给use-package使用它一次吗?

emacs package emacs24

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

标签 统计

casting ×1

emacs ×1

emacs24 ×1

go ×1

interface ×1

package ×1

pointers ×1

struct ×1