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

вектор алгоритм erase - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ operator= возврат значения и просто ссылки http://www.cyberforum.ru/cpp-beginners/thread809011.html
Здорова господа! Снова пытаюсь чуток в С++ разобраться, с перегрузкой операций, снова ничерта непонятно. от допустим класс class S { int b; S& operator=(const S a) {
C++ Работа с классами. Найти сумму элементов каждой строки матрицы Здравствуйте. Помогите, пожалуйста, написать следующую программу: Создайте класс в соответствии с условием задачи. Определите функции-члены класса для вывода реализации требуемых действий. Задача: Найдите сумму элементов каждой строки матрицы. Заранее спасибо. http://www.cyberforum.ru/cpp-beginners/thread809004.html
strrok_s C++
Есть код, компилятор (вижуал студио 2010) не выдает ошибок и варнингов. В определенный момент просто пишет, что работа программы прикращена, что не так можете пожалуйста взглянуть, подозреваю, что что-то связанное с стртоком. В дебаге что-то писало про неправильное значение &context #include "stdafx.h" #include <iostream> #include <conio.h> #include <iomanip> #include <stdio.h> #include...
Программа if-else (координаты и радиус круга) C++
Здравствуйте! Необходимо написать программу: пользоатель вводит 2 координаты и радиус круга, программа их высчитывает и в зависимости от результата должна написать в какой четверти находится точка. Прикладываю условие и часть выполненной мною программы. Не знаю как заставить понимать, что точка находиться в третьей и четвертой системе координат. #include <locale.h> #include <conio.h>...
C++ Считывание текста с файла http://www.cyberforum.ru/cpp-beginners/thread808982.html
Здравствйте,нужна программа которая будет считывать текст с файла и выводить его в другой файл.Что то не выходитюПрограмма просто создает пустой файлюПомогите! #include<stdio.h> int main() { FILE *fin,*fout; fin = fopen("D:\\input.txt","r"); fout= fopen("D:\\output.txt","w");
C++ Считывание текстового масива , русского Возможно вопрос баян и отправьте меня куда-то смотреть ответ, но я не нашёл как сделать это, мне надо считать в массив текст введённый в консоли на русском языке. вот к примеру обрывок int main () { char mass; cin>>mass; Добавлено через 1 час 45 минут Ну т.е что бы у меня в массив записались именно русские символы. подробнее

Показать сообщение отдельно
MrGluck
Модератор
Эксперт CЭксперт С++
7211 / 4377 / 638
Регистрация: 29.11.2010
Сообщений: 11,887
16.03.2013, 00:15
Genn55, отступы пляшут.
В строке
C++
1
vector< int > vec( ia, ia+20 );
20 - magic number.
В С++11 можно делать так:
C++
1
vector< int > vec = { 0,1,2,0,1,4,0,4,2,3,5,1,4,3,0,5,1,2,4,2 };
Если все-таки по старому стандарту, то следует
C++
1
vector< int > vec( ia, ia + sizeof(ia)/sizeof(*ia) );
Все итераторы убрать в цикл for. И использовать префиксный инкремент взамен постфиксного (возможно,отладчик сам это исправит, но уповать на это не стоит).
Будет выглядеть так:
C++
1
for (vector<int>::iterator it = vec.begin(); it != end_it;  ++it)
Можно для удобства создать
C++
1
2
typedef vector<int>::iterator vecit;
for (vecit it = vec.begin(); it != end_it;  ++it)
хоть это и не обязательно.
Вывод в консоль я бы сделал через копирование в поток вывода на экран с помощью ostream_iterator
C++
1
std::copy(vec.begin(), vec.end(), std::ostream_iterator<int>(std::cout, " ") );
требует хедера iterator.
И если бы мы говорили о С++11 я бы печать вектора вынес в отдельную лямбда-функцию.
Но вам сейчас главное с отступами разобраться, избавиться от magic number и итераторы в for цикл запихнуть.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru