Есть ли в языке Go перегрузка функций / методов?

Я портирую библиотеку C на Go. Функция AC (с varargs) определяется следующим образом:

curl_easy_setopt(CURL *curl, CURLoption option, ...); 

Итак, я создал функции оболочки C:

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

Если я определяю функцию в Go следующим образом:

func (e *Easy)SetOption(option Option, param string) {
    e.code = Code(C.curl_wrapper_easy_setopt_str(e.curl, C.CURLoption(option), C.CString(param)))
}

func (e *Easy)SetOption(option Option, param long) {
    e.code = Code(C.curl_wrapper_easy_setopt_long(e.curl, C.CURLoption(option), C.long(param)))
}

Компилятор Go жалуется:

*Easy·SetOption redeclared in this block

Так же поступает функция поддержки Go ( метод) перегрузка, или эта ошибка означает что-то другое?

103
задан Stephane Bersier 21 April 2016 в 11:57
поделиться