Я сразу извиняюсь за ламерский вопрос и некоторую резкость по отношению к эхотагу (программлю только вторую неделю), но...
Как сделать такую простую вещь как сабж? Т.е. я понимаю, что можно вернуть коллекцию строк, можно вернуть класс (специально созданный для хранения двух строк), можно написать враппер для String (с методами getString и setString) и передавать его по ссылке. А проще в этом долбанном языке никак нельзя? Или может есть готовый враппер или т.п.?
P.S. Тоже самое, кстати, касается int и т.п. простых типов, которые нельзя передавать по ссылке.
P.S.S. А вообще я уже просто утомился писать кучу кода из-за ничего
Здравствуйте Vladik, Вы писали:
V>Привет!
V>Я сразу извиняюсь за ламерский вопрос и некоторую резкость по отношению к эхотагу (программлю только вторую неделю), но...
V>Как сделать такую простую вещь как сабж? Т.е. я понимаю, что можно вернуть коллекцию строк, можно вернуть класс (специально созданный для хранения двух строк), можно написать враппер для String (с методами getString и setString) и передавать его по ссылке. А проще в этом долбанном языке никак нельзя? Или может есть готовый враппер или т.п.?
V>P.S. Тоже самое, кстати, касается int и т.п. простых типов, которые нельзя передавать по ссылке. V>P.S.S. А вообще я уже просто утомился писать кучу кода из-за ничего
Держись, друг. Ты не один.
Эт точно. Без указателей приходится туго.
Получается что для любой функции, возвращающей больше одного значения приходтся городить класс возвращаемых значений.
Я обхожусь тем, что написал по вреперу для каждого простого типа.
class RefInt
{
public Integer val = null;
}
void f(RefInt ri)
{
ri.val = new Integer(5);
}
void g()
{
RefInt ri = new RefInt();
f(ri);
int a = ri.val.intValue();
System.out.println(a);
}
Вот такой изврат...
Надо поспрашать в форуме .Net.
В C#-пе теже заморочки?
Здравствуйте Рек, Вы писали:
Рек>Здравствуйте Vladik, Вы писали: V>>Привет! V>>Как сделать такую простую вещь как сабж? Т.е. я понимаю, что можно
Рек>В C#-пе теже заморочки?
V>Как сделать такую простую вещь как сабж? Т.е. я понимаю, что можно вернуть коллекцию строк, можно вернуть класс (специально созданный для хранения двух строк), можно написать враппер для String (с методами getString и setString) и передавать его по ссылке. А проще в этом долбанном языке никак нельзя? Или может есть готовый враппер или т.п.?
а возвращать массив тебе чем не подходит? нах классы, то городить?
V>P.S. Тоже самое, кстати, касается int и т.п. простых типов, которые нельзя передавать по ссылке. V>P.S.S. А вообще я уже просто утомился писать кучу кода из-за ничего :(
Здравствуйте Vladik, Вы писали:
V>Привет!
V>Я сразу извиняюсь за ламерский вопрос и некоторую резкость по отношению к эхотагу (программлю только вторую неделю), но...
V>Как сделать такую простую вещь как сабж? Т.е. я понимаю, что можно вернуть коллекцию строк, можно вернуть класс (специально созданный для хранения двух строк), можно написать враппер для String (с методами getString и setString) и передавать его по ссылке. А проще в этом долбанном языке никак нельзя? Или может есть готовый враппер или т.п.?
V>P.S. Тоже самое, кстати, касается int и т.п. простых типов, которые нельзя передавать по ссылке. V>P.S.S. А вообще я уже просто утомился писать кучу кода из-за ничего
Привет!
Верни Vector строк созданный в функции, либо заполни переданный Vector, а верни boolean.
Вариантов много, и думать об очистке памяти не надо.
Здравствуйте Пластеев Владимир, Вы писали:
ПВ>а возвращать массив тебе чем не подходит? нах классы, то городить?
Во-первых озвращать массив — не наглядно и чревато глюками (т.к. элементы массива не именованы). Во-вторых у меня не получилось описать функция, _возвращающую_ массив :*)
V>>P.S. Тоже самое, кстати, касается int и т.п. простых типов, которые нельзя передавать по ссылке. V>>P.S.S. А вообще я уже просто утомился писать кучу кода из-за ничего ПВ>дык это тебе не цпп, тут аккуратно типа все.
Тем не менее передача объектов по ссылке (и больше никак!), включая те же строки, это фккуратно?
Здравствуйте Alex_Skokov, Вы писали:
V>>P.S.S. А вообще я уже просто утомился писать кучу кода из-за ничего AS>Верни Vector строк созданный в функции, либо заполни переданный Vector, а верни boolean.
Это я и имел ввиду под "кучей кода из-за ничего". Создать, заполнить, прочитать...
AS>Вариантов много, и думать об очистке памяти не надо.
А если бы можно было просто передать по ссылке — надо было бы думать???
Здравствуйте Vladik, Вы писали:
V>Во-первых озвращать массив — не наглядно и чревато глюками (т.к. элементы массива не именованы). Во-вторых у меня не получилось описать функция, _возвращающую_ массив :*)
MyType[] methodName() не пробовал? :)
// два года уже на джаве не писАл, надеюсь не ошибся :)
Здравствуйте Vladik, Вы писали:
V>Привет!
V>Я сразу извиняюсь за ламерский вопрос и некоторую резкость по отношению к эхотагу (программлю только вторую неделю), но...
V>Как сделать такую простую вещь как сабж? Т.е. я понимаю, что можно вернуть коллекцию строк, можно вернуть класс (специально созданный для хранения двух строк), можно написать враппер для String (с методами getString и setString) и передавать его по ссылке. А проще в этом долбанном языке никак нельзя? Или может есть готовый враппер или т.п.?
V>P.S. Тоже самое, кстати, касается int и т.п. простых типов, которые нельзя передавать по ссылке. V>P.S.S. А вообще я уже просто утомился писать кучу кода из-за ничего