c_strings.go 239 B

12345678910111213141516
  1. package main
  2. import "C"
  3. var cStringsCache = make(map[string]*C.char)
  4. func cachedCString(str string) *C.char {
  5. if cstr, ok := cStringsCache[str]; ok {
  6. return cstr
  7. }
  8. cstr := C.CString(str)
  9. cStringsCache[str] = cstr
  10. return cstr
  11. }