2 / 2 / 1
Регистрация: 28.11.2010
Сообщений: 102
|
|||||||||||
1 | |||||||||||
Три вопроса от чайника по С++06.12.2010, 16:59. Показов 1083. Ответов 10
Метки нет (Все метки)
Здравствуйте,
1. Как возможно присвоить один массив другому? Или придется перегружать7 2. Как конструкцию в Basic можно переделать в с++
3. Передаю в функцию массив посредством указателя на первый элемент. Например void func(float* ar) { } Как теперь работать с этим массивом?
0
|
06.12.2010, 16:59 | |
Ответы с готовыми решениями:
10
Три задачи для чайника. Три вопроса Три вопроса Три вопроса по Ubuntu 9.10 |
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|
06.12.2010, 18:01 | 2 |
1. Простые массивы присваивать друг другу нельзя(только копировать поэлементно). Гораздо удобнее использовать valarray вместо обычного массива(ну, или vector, в зависимости от того, что вам нужно).
2. Через конструкцию if-else if-else 3. Работать с ar также, как с обычным массивом.
0
|
2 / 2 / 1
Регистрация: 28.11.2010
Сообщений: 102
|
||||||||||||||||
08.12.2010, 18:24 [ТС] | 3 | |||||||||||||||
1. Если я передаю элемент массива по значению, в конце процедуры с массивом ничего не случится? Просто помню, что если передавать массивы по значению, то в конце процедуры С++ его удаляет. Например:
Есть функция
Почему студиа делает предупреждение? 3. Я пишу:
4. Как перегрузить оператор = для массивов?
0
|
Фрилансер
3705 / 2077 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
08.12.2010, 19:13 | 4 |
Ничего. Передача по значению работает как присваивание - никакой обратной связи с переданным параметром внутри функции нет.
Обычные массивы в С/C++ вообще нельзя передавать по значению. После return она выходит из функции. Она ведь не обязана проверять, покрывают ли условия все возможные варианты. Формально последний оператор может пропустить поток управления на выход функции без возврата значения, что будет ошибкой. Студия ведь только предупреждает, а не фиксирует ошибку. И почему бы не убрать последний if ? А если уж хочется видеть условие, то его ведь можно и в комментарии привести.
0
|
08.12.2010, 21:13 | 7 | |||||
Если без велосипедов, то вот так:
0
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||||||||||||||||||||||
08.12.2010, 22:08 | 8 | |||||||||||||||||||||||||
0
|
2 / 2 / 1
Регистрация: 28.11.2010
Сообщений: 102
|
||||||||||||||||
12.12.2010, 20:01 [ТС] | 9 | |||||||||||||||
Благодарю.
Чем отличается
Почему только у меня код
0
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
12.12.2010, 21:05 | 10 |
1
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|
13.12.2010, 17:20 | 11 |
В первом случае массив динамический, во втором статический(подробнее в книгах для начинающих). Только естесвенно не double[], а double*.
0
|
13.12.2010, 17:20 | |
13.12.2010, 17:20 | |
Помогаю со студенческими работами здесь
11
Три простых вопроса... У меня три вопроса Три вопроса по ASP+VBScript Три вопроса для демона Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |