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

Перегрузка << для вектора - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Действия со строками http://www.cyberforum.ru/cpp-beginners/thread210380.html
16.Составить программу на СИ. Где дан текст. Определить, встречается ли в нем заданное слово, если да – то сколько раз.
C++ Вычислить площадь фигуры ограниченной линиями Ребят помогите плс!Задачка никак не получается((( Постановка задачи. Вычислить площадь фигуры ограниченной линиями f1(x) и f2(x) (табл.1). Для вычисления площади фигуры ограниченной линиями можно использовать итерационное выражение Si+1= Si + (f2(xi) – f1(xi)) dx , где S0 = 0 , x0 = 0 и i = 0, 1, 2...n . Я прикрепляю картинку с графиком и моей функцией..Нужно сделать через цикл while... http://www.cyberforum.ru/cpp-beginners/thread210370.html
Ввести строку и слово. Определить и вывести, сколько раз встречаются в строке буквы, перечисленные в слове. C++
Ввести строку и слово. Определить и вывести, сколько раз встречаются в строке буквы, перечисленные в слове. Ha Cu. Заранее спасибо за помошь.
C++ Одиночное наследование классов.
Реализовать наследование классов, их конструкторов, и если необходимо деструкторов, для своего варианта. Продемонстрировать в программе работу функций классов. Создать класс Fruit, содержащий следующие элементы: - поле «зрелость» int Ripeness; - поле «название» char* Name; - поле «цвет» char* Color; - метод получения зрелости int GetRipeness() ; - метод получения цвета char* GetColor();...
C++ Перегрузка функций http://www.cyberforum.ru/cpp-beginners/thread210364.html
Для соответствующего класса, перегрузить арифметические операции(+,-,*,/). При перезгузке арифметические действия должны выполняться относительно только числовых полей!!! Создать несколько объектов класса и проинициализировать их с помощью конструктора с параметрами. Создать несколько дополнительных объектов таким образом, чтобы: - первый объект являлся суммой двух других объектов; - второй...
C++ Некомпелируеца программа на DeviceIoControl Здраствуйте, помогите пожалуйсто, нашел в нете код, а он некомпелируеца, вот код: #include <cstdlib> #include <iostream> #include "windows.h" #include "iostream.h" typedef struct DIOCRegs { DWORD reg_EBX; DWORD reg_EDX; DWORD reg_ECX; DWORD reg_EAX; подробнее

Показать сообщение отдельно
Aye Aye
 Аватар для Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
14.12.2010, 11:41     Перегрузка << для вектора
Цитата Сообщение от norge_goth Посмотреть сообщение
...самый последний временный объект, который был передан операторной ф-ции вот тут: << std::string("nine"); - будет содержат полный вектор...
нет, последний временный объект не будет содержать все строки. Почему он должен? Ведь из него вызовется всего один оператор для одной строки. Каждый раз временный объект новый - сконструированный конструктором по умолчанию. Наверно тебя вводит в заблуждение указатель this? Он для каждого объекта свой собственный.
если есть:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class A{
    int x;
public:
    void foo(int x)
    {
         this->x = x;
    }
};
// и объекты класса А
A aaa, bbb;
// то вызов
aaa.foo(100500);
// совершается так: foo(&aaa,100500); как бы void foo(A *this, int x)
// вызов
bbb.foo(111111);
// совершается так: foo(&bbb,111111); как бы void foo(A *this, int x)
 
// и в этой точке программы aaa.x != bbb.x
// aaa.x == 100500
// bbb.x == 111111
то есть для каждого вызова метода указатель на объект, из которого он был вызван, ему передается каждый раз свой - с адресом этого самого объекта.

и на второй вопрос - да. Деструкторы будут вызваны для временных объектов сразу, как только завершится вычисление выражения в котором эти временные объекты участвуют. Вот их столько и вызвалось.
Незачто.
 
Текущее время: 23:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru