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

Неправильная работа программы по учебнику Дейтелов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Обработка исключения http://www.cyberforum.ru/cpp-beginners/thread1030877.html
Доброго времени суток, ув. программисты С++. Суть моей проблемы в том, что мне надо сделать некую обработку исключения. Задание следующее: Мне нужно считать данные из файла,выполнить с ними некоторые манипуляции (нахождение НОД) и записать результат в другой файл. Мне осталось сделать исключение,что бы если в файле находятся символы либо буквы, программка ругнулась, выдала сообщение мол "данные...
C++ Интеграл Методом Монте-Карло в С++,пожалуйста Вычислить методом Монте-Карло интеграл \int_{0}^{\infty} e^(-x^2/2)*cos(x) dx,вывести точное значение (sqrt(pi/(2*e))),оценку и погрешность. http://www.cyberforum.ru/cpp-beginners/thread1030874.html
Шаблон и функция C++
for (int i = 0; i < vertexCount; i++){ //Creating vertexes //head->Name = to_string(i); add<Node>(i,Nhead,nVertex); } Это вызов функции. template<typename T> void Graph::add(int i, T* head,T*curStruct){ curStruct = new T; curStruct->Weight = i; //Записываем x в элемент структуры element (в x структуры element) curStruct->next = head; //Указываем, что след. элемент это объект по...
C++ Вызов функции класса. Чего-то не допонял
1>d:\с++ файл\1.5.1\1.5.1\1.5.1.cpp(136): error C2352: Man::ChangeName: недопустимый вызов нестатической функции-члена 1> d:\с++ файл\1.5.1\1.5.1\1.5.1.cpp(16): см. объявление "Man::ChangeName" 1>d:\с++ файл\1.5.1\1.5.1\1.5.1.cpp(137): error C2352: Man::ChangeAge: недопустимый вызов нестатической функции-члена 1> d:\с++ файл\1.5.1\1.5.1\1.5.1.cpp(17): см. объявление...
C++ Построить конечный автомат из вещественных чисел в 16-речной системе счисления http://www.cyberforum.ru/cpp-beginners/thread1030774.html
Здравствуйте,помогите разобраться с алгоритмом.нужно построить конечный автомат из вещественных чисел с целой и/или дробной частью в 16-речной системе счисления.Например возможные числа:A01.BC 0101 .EEE и т.д А действие:десятичное значение. я построила диаграмму переходов и таблицу переходов,а как это действие реализовать?(помогите написать таблицу переходов с действиями).
C++ Массив из структур с двумя целочисленными полями Я попытался написать программу, определяющую массив из структур с двумя полями, содержащими 5 элементов. Ввод значений элементов с консоли. А функция должна была вычислять произведение первых полей тех элементов, сумма полей которых четна. Но что то пошло не так=) #include "stdafx.h" #include <stdio.h> #include <iostream> #include <locale> struct one{ int x; подробнее

Показать сообщение отдельно
RamonN
32 / 32 / 11
Регистрация: 13.07.2011
Сообщений: 136

Неправильная работа программы по учебнику Дейтелов - C++

06.12.2013, 14:27. Просмотров 233. Ответов 9
Метки (Все метки)

Всем доброго времени суток.
Изучаю книгу Дейтелов "Как программировать на С/С++" , попутно выполняя написанные там программы
Возникла ошибка
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
 
class PhoneNumber
{
    friend std::ostream &operator<<(std::ostream &, const PhoneNumber&);
    friend std::istream &operator>>(std::istream &, PhoneNumber&);
private:
    char areaCode[4];
    char exchange[4];
    char line[5];
};
 
std::ostream &operator<<(std::ostream &output, const PhoneNumber &num)
{
    output << "(" << num.areaCode << ") "
        << num.exchange << "-" << num.line;
    return output;
}
 
std::istream &operator>>(std::istream &input, PhoneNumber &num)
{
    input.ignore();
    input.getline(num.areaCode, 4);
    input.ignore(2);
    input.getline(num.exchange, 4);
    input.ignore();
    input.getline(num.line, 5);
 
    return input;
}
 
int main()
{
    PhoneNumber phone;
 
    std::cout << "Enter a phone number in the "
        << "form (123) 456-7890:\n";
    std::cin >> phone;
 
    std::cout << "The phone number entered was:\n"
        << phone << std::endl;
 
    system("pause");
    return 0;
}
Функция getline при переопределении оператора >> считывает только в первый элемент areaCode класса num, а остальные просто пустые строки.
Как сделать, чтобы считывал во все элементы класса?
Заранее спасибо
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru