Форум программистов, компьютерный форум CyberForum.ru

Инициализация вектора массивом - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 28, средняя оценка - 4.64
OVERPOWER8
 Аватар для OVERPOWER8
19 / 19 / 1
Регистрация: 29.11.2009
Сообщений: 224
03.01.2010, 20:30     Инициализация вектора массивом #1
Можно ли как-то упростить эту запись?

C++
1
2
3
4
5
6
7
int fib[]={1,1,2};      int tri[]={1,3,6};
    int luc[]={1,3,4};      int sqr[]={1,4,5};
    int pel[]={1,2,5};      int pen[]={1,5,12};
    
    vector<int> fibonacci(fib,fib+3), lucas(luc,luc+3), 
        pell(pel,pel+3), triangular(tri,tri+3), 
        square(sqr,sqr+3), pentagonal(pen,pen+3);
Чтобы было что-то вроде этого:

C++
1
2
int nums[]{1,1,2,1,3,4,1,2,5,1,3,6,1,4,5,1,5,12};
vector<int> fibonacci(nums,nums+3), lucas(nums+3,nums+6)...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Андрейка
410 / 214 / 24
Регистрация: 25.03.2009
Сообщений: 717
04.01.2010, 00:11     Инициализация вектора массивом #2
OVERPOWER8,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int main()
{
 
 int nums[]= {1,1,2,1,3,4,1,2,5,1,3,6,1,4,5,1,5,12};
 vector<int> fibonacci(nums,nums+3), lucas(nums+3,nums+6);
 
 std::copy(fibonacci.begin(), fibonacci.end(), std::ostream_iterator <int> (std::cout," "));
 std::copy(lucas.begin(), lucas.end(), std::ostream_iterator <int> (std::cout," "));
 
 system("pause");
 return 0;
}
а что вам тут не нравится? можно и так
OVERPOWER8
 Аватар для OVERPOWER8
19 / 19 / 1
Регистрация: 29.11.2009
Сообщений: 224
04.01.2010, 01:02  [ТС]     Инициализация вектора массивом #3
Андрейка
>> Все в порядке. Просто я сомневался, правильно ли будет присваивать так:
C++
1
fibonacci(nums,nums+3), lucas(nums+3,nums+6)...
zim22
depict1
 Аватар для zim22
276 / 141 / 2
Регистрация: 11.07.2009
Сообщений: 606
04.01.2010, 11:14     Инициализация вектора массивом #4
Цитата Сообщение от OVERPOWER8 Посмотреть сообщение
Просто я сомневался, правильно ли будет присваивать так:
правильно с точки зрения чего? преподавателя? синтаксиса? удобочитаемости?
Yandex
Объявления
04.01.2010, 11:14     Инициализация вектора массивом
Ответ Создать тему
Опции темы

Текущее время: 21:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru