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

Как работает данная программа - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ массив и индекс http://www.cyberforum.ru/cpp-beginners/thread189147.html
объявляя массив и его индекс,индекс должен быть константой.Почему? Препод сказал что если массив будет динамической то можно будет чтобы его индекс не был константой. Например я хочу написать такой код int n=0; cin>>n; int a; Почему нельзя так
C++ Ошибка в коде. Простая программа: просто ввод и вывод матрицы. Выдает ошибку уже после компиляции. Мой код: #include <stdio.h> #include <conio.h> int inputmat(float** A, int n, int m, int Nmax, int Mmax); void outputmat(float** A, int n, int m); http://www.cyberforum.ru/cpp-beginners/thread189143.html
Сумма\разность матриц C++
Помогите плиз написать программу . Нужно составить программу , вычисляющую сумму и разность двух матриц размеров 3х3 .
C++ Удалить из строки цифры. С++. Срочно
Дана строка, состоящая из слов, разделенных любым количеством пробелов. Напишите программу, которая редактирует эту строку, удаляя все цифры помогите пожалуста, я понимаю что через цикл надо сделать используя функцию isalnum(a), но не могу представить как то реальзовать, очень помощь нужна ваша. срочно.
C++ Выяснить, имеются ли среди чисел n, n+1, ..., 2n близнецы, т.е. простые числа, разность между которыми равна двум. http://www.cyberforum.ru/cpp-beginners/thread189088.html
Помогите, пожалуйста, решить задачу: дано натуральное число n. Выяснить, имеются ли среди чисел n, n+1, ..., 2n близнецы, т.е. простые числа, разность между которыми равна двум. (Определить процедуру, позволяющую распознавать простые числа.)
C++ Сумма элементов массива, расположенных до минимального элемента В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) номер элементов массива, расположенных до минимального элемента; 2) записать элементы в файл Прошу вашей помощи! Чем скорее тем лучше! подробнее

Показать сообщение отдельно
KaridatMerkader
Сообщений: n/a
10.11.2010, 19:56     Как работает данная программа
изучаю тему преобразования типов (в данном случае тип Counter преобразуется в int)
и вот набрала код из книги, но не понимаю как он работает и почему:
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
#include <iostream>
 
class Counter
{
public:
    Counter();
    Counter(int val);
    ~Counter() {}
    int GetItsVal() const { return itsVal; }
    void SetItsVal(int x) { itsVal = x; }
    operator unsigned short();
private:
    int itsVal;
};
 
Counter::Counter():itsVal(0)
{}
 
Counter::Counter(int val): itsVal(val)
{}
 
Counter::operator unsigned short ()
{
    return (int (itsVal));
}
 
int main()
{
    Counter ctr(5);
    int theShort = ctr;
    std::cout << "theShort: " << theShort << std::endl;
    return 0;
}
Помогите, пожалуйста, разобраться как именно работает этот кусочек:
C++
1
2
3
4
Counter::operator unsigned short ()
{
    return (int (itsVal));
}
Функция ничего не получает и ничего не возвращает...
Я даже не понимаю, как она вызывается (а она же вызывается в main).
Я не понимаю строчку return (int (itsVal)); -- зачем указывать что itsVal должна быть типа int, если она и так int.
В моём понимании нужно просто вызвать функцию GetItsVal(), которая и возвращает нужный тип.
Так, как же это работает?
Разъясните, пожалуйста.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru