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

STL значения итераторов нивелируются при передаче в функцию - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ sqrt c++ http://www.cyberforum.ru/cpp-beginners/thread715402.html
Всем привет. Не могу понять в чём у меня ошибка...обычная формула нахождения длины вектора по его координатам. a = sqrt((x2-x1)^2 + (y2-y1)^2); но мне почему то пишет огромное отрицательное шестизначное число.=\ как так?. #include<stdio.h> #include<locale> #include<math.h> #include<conio.h>
C++ Поиск и вывод из файла Здравствуйте ! Есть код #include <stdio.h> #include <stdlib.h> #include <conio.h> main() { FILE *ff; int i; struct {char a; char b; int r;} b={{"Avtor1","Nazva1",1994}, http://www.cyberforum.ru/cpp-beginners/thread715398.html
Подсчёт времени сортировки массива пузырька C++
Проблема: всё время выводит 0.00000000000 Вопрос: как решить проблему? #include <stdio.h> #include <stdlib.h> #include <time.h> #include<windows.h> int main () {
C++ Динамический массив структур
Задача: Дана структура struct Payment { char *Name; // ФИО человека в виде строки char *Date; // дата в виде строки формата dd.mm.yy int Sum; // сумма платежа }; Напишите функции создания массива из n структур,удаления массива, ввода и вывода всех элементов массива. Проблема: что-то мне подсказывает, что ввод и вывод написаны коряво. Подскажите пожалуйста, что поправить.
C++ Не переходит на другой луп http://www.cyberforum.ru/cpp-beginners/thread715375.html
cin >> ccat; do { switch (ccat)//choice category { case 'E': cout << "\nYou choose E" << endl; cout << "\nThe table of E.\n" << endl; fin.open ("code.dat"); if (fin.fail())
C++ Скалярное произведение строк матрицы Создать функцию которая вычисляет скалярное произведение двух указанных строк матрицы. С помощью этой функции вычислить все возможные скалярные произведения для матрицы (матрица 3x2) подробнее

Показать сообщение отдельно
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
01.12.2012, 18:31     STL значения итераторов нивелируются при передаче в функцию
Ну и зачем тогда весь этот хвалёный STL? Получается в функции значения векторов не изменить так, а только по индексу (в чём я теперь не уверен) либо работать со старыми добрыми массивами, которые не поведут... Каменный век какой-то.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
#include <vector>
#include <windows.h>
 
using namespace std;
 
vector <int> vec;
bool f (vector<int>::iterator);
 
 
int main () {
 vector <int> vec;
 vec.push_back (3);  
 vector<int>::iterator it= vec.begin();
 
 //Тут выводится верное значение
 printf (" %d\n",((it+1)==vec.end()));
 
 //А тут лажа какая-то          
 f (it);
 
 getchar ();
 return 0;
}
/////////////////////////////////////////////////////////////////////
bool f (vector<int>::iterator it) {
 printf (" %d\n",((it+1)==vec.end()));
}
/////////////////////////////////////////////////////////////////////
спасибо, кто откликнется.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru