Как проверить тип переменной во время выполнения на языке Go

У меня есть несколько функций C, объявленных подобным образом

CURLcode curl_wrapper_easy_setopt_long(CURL* curl, CURLoption option, long param);
CURLcode curl_wrapper_easy_setopt_str(CURL* curl, CURLoption option, char* param);

Я хотел бы показать их как одну функцию Go, подобную этой

func (e *Easy)SetOption(option Option, param interface{})

, поэтому мне нужно иметь возможность чтобы проверить тип param во время выполнения. Как мне это сделать и является ли это хорошей идеей (если нет, что является хорошей практикой в ​​данном случае)?

56
задан Darius Kucinskas 9 August 2011 в 13:12
поделиться