在运行时使用字符串/变量访问常量

帕巴卡尔·赖

我正在开发跨平台打字/按键模拟器。在此,我试图实现如下功能。

package main

import "fmt"
import "strings"

const (
    VK_A = 5
    VK_S = 14
    VK_D = 25
)

func main() {
    // Suppose, I got user input "a", and based on this,
    // i want to print the value of VK_A
    var userInput string = "a"
    var constToSelect string = "VK_" + strings.ToUpper(userInput)
    fmt.Println(constToSelect) // This string is VK_A
    // But how can i get 5 which is the value of VK_A
}

我需要这种功能,因为根据平台,VK_A 具有不同的值。对于 Windows,它是 30,对于 darwin,它是 0x00。

乔治

您可以使用地图并查看https://blog.golang.org/maps

m = make(map[string]int)
m["VK_A"] = 5
value := m[constToSelect]

地图不是常量

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用字符串插值插入常量是否有运行时开销?

在运行时通过字符串从 python 访问模块和模块变量

使用字符串变量访问常量

EF Core和LINQ-如何在运行时使用字符串变量构建动态的Where子句?

使用在运行时之前未知的转义值(变量)构造字符串

在运行时使用字符串创建T且不会丢失智能感知

在运行时从base64编码的字符串中应用字体

如何在运行时在Objective-C中查找字符串常量?

在运行时在字符串中设置值

Dapper 在运行时更改连接字符串

尝试在运行时编辑字符串

在运行时验证MathText字符串

在运行时更改字符串

为什么在struct中使用字符串时出现运行时错误

每个内部使用字符串时发生运行时错误

使用Java和C在运行时调用名为“字符串”的方法

使用某些字符串在运行时调用方法

使用要在运行时填充的字符串切片

如何在运行时使用多个分隔符拆分字符串

使用Haskell在运行时解释多行代码字符串

将变量存储在数据库中的字符串中,并在运行时进行翻译

如何在运行时将字符串连接到字符串之间?

在运行时使用文字调用常量

使用模拟的Windows Service帐户在运行时执行EF代码优先连接字符串

使用连接字符串和精简程序时如何在运行时更改初始目录

Swift:使用字符串访问结构变量

Ruby:使用字符串访问成员变量(Reflection)

使用字符串变量访问JavaScript模块方法

在运行时确定或访问类型变量的具体类型