PHP: private string AuthReq(string login, string pass, string proxy = null) { return AuthReq(login, pass, string.Empty, string.Empty, proxy); } private string AuthReq(string login, string pass, string tkn, string proxy = null) { return AuthReq(login, pass, tkn, string.Empty, proxy); } private string AuthReq(string login, string pass, string captchaAnswer, string proxy = null) { return AuthReq(login, pass, string.Empty, captchaAnswer, proxy); } private string AuthReq(string login, string pass, string tkn, string captchaAnswer, string proxy = null) { ..... } Будет ругаться, как перегрузить?
Что нет?! Почитать лениво? Сам подумай, как компилятор определит, какую функцию вызывать, если у нескольких экземпляров функции и параметры принимаемые, и имя одинаковые?
сделай классы(структуры) хранящие твои параметры, у них будут разные имена. Вот тебе и перезагрузка операторов
Можно всё разбить на классы и будет гораздо удобнее. Я делал примерно так (реализация может зависеть от задачи, но суть одна): PHP: public class Account : IHttpConnect { public HttpRequest Request { get; set; } // Свойство из IHttpConnect public string Login { get; private set; } public string Password { get; private set; } public CookieDictionary Cookies { get; private set; } //... Какие-нибудь другие поля/свойства, если нужны. public Account(string login, string password) { Login = login; Password = password; } public AccountStatus Logining(ref Captcha captcha) { // Пробуем залогиниться. // Если нужно ввести капчу. { captcha = new Captcha( /*тут нужно указать адрес капчи и дополнительное информацию, если нужно*/); return; } else { captcha = null; } } } // А теперь используем данный класс. Captcha captcha; Account account = new Account("Егорыч+++", "qwert"); using (var request = new HttpRequest()) { request.UserAgent = HttpHelper.RandomUserAgent(); request.Proxy = Socks5ProxyClient.Parse("127.0.0.1:1080"); // Можно установить другие параметры запроса. account.Request = request; do { account.Logining(ref captcha); if (captcha != null) { // Получаем ключ от капчи и сохраняем его. captcha.Key = "ololo"; // Далее используем этот ключ при повторном логининге. } }while (captcha != null); } Здесь используется моя библиотека, её, если нужно, можешь скачать ЗДЕСЬ , а в блоге узнать больше информации.