Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Возвращаемые значения 
V
    Опции темы
Franz1981
Дата 13.10.2008, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 8.10.2008

Репутация: нет
Всего: нет



Возникла надобность следующей конструкции:

Код

 int DC(float x,float y,float z)
        {
            float xnew,ynew;
             .......
             .......
            return xnew;
            return ynew;

       }


принимает 3 координаты и возвращает 2.
что я сделал не так, что не могу использовать её например так:

Код

gr.DrawLine(FillFat, x1, y1, DC(0,150,0));


то есть необходимо чтобы DC врзвращала x и у через запятую, чтоли так)
PM MAIL   Вверх
elbjarn
Дата 13.10.2008, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 98
Регистрация: 13.4.2008
Где: Дубна

Репутация: 1
Всего: 3



Franz1981, ваше понимание механизма возврата значений из функции  в корне неверно. функция может возвращать одно-единственное значение, не считая неявных возвратов при использовании ключевых слов out и ref (передача параметров по ссылке для их инициализации или изменения).
для того, чтобы ваша функция возвращала, к примеру, два int, упакуйте их в структуру или класс, и возвращайте объект этого класса.
кстати, в вашем случае такой класс уже есть - это Point.
Код

Point DC(float x,float y,float z)
        {
            float xnew,ynew;
             .......
             .......
            return new Point(xnew, ynew);
       }
...
Point p = DC(0,150,0);
gr.DrawLine(FillFat, x1, y1, p.X, p.Y);


и кстати в функции не может быть двух return. это ключевое слово означает "немедленно прекратить выполнение функции и вернуть значение, передаваемое оператору return".

на всякий случай приведу пример реализации класса Point
Код

        public class Point
        {
            public int X;
            public int Y;
            public Point(int X, int Y)
            {
                this.X = X;
                this.Y = Y;
            }
        }

свойства оформите самиsmile

Это сообщение отредактировал(а) elbjarn - 13.10.2008, 14:32
PM MAIL ICQ   Вверх
Franz1981
Дата 13.10.2008, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 8.10.2008

Репутация: нет
Всего: нет



сапсибо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1988 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.