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

operator() - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Замерить время вычислений http://www.cyberforum.ru/cpp-beginners/thread1076684.html
Добрый вечер. Есть ли способ замерить продолжительность процесса вычислений, детали которых скрыты? Есть объект, который производит продолжительное вычисление, и нужно как-то вывести это на прогресс-бар. Никакие промежуточные этапы расчетов, куда можно было бы "вклиниться" недоступны. Может быть можно это как-то по загруженности CPU вывести или еще что-то. (Решение через Qt приветствуются )...
C++ цикл do while for(int z=0; z<=4;z++) { do { fream(); // вызов функции var = randX_p_0_1(Pperr); // вызов функции возвращает 0 или 1 if (var==1) { http://www.cyberforum.ru/cpp-beginners/thread1076675.html
Является ли отрицательное значение выходом за пределы массива C++
Если написать такой код, то прога скомпилируется и запустится, но можно ли потом ждать проблем и неожиданных зависаний ? int i=-1; int mass={0}; _cprintf("mass= %d\n", mass); Часто использую отрицательные значения обычно -1 для индексов массива (так просто получается удобнее), проблем не замечал, но вот задумался.
небольшое исправление C++
написал прогу которая будет выводить количество вершин(узлов) на уровне который вводим с клавиатуры только конец проги не могу дописать, помогите пожалуйста #include<iostream> using namespace std class tree { public: int inf; tree* right;
C++ Списки. Не выводит первую вводимую строку http://www.cyberforum.ru/cpp-beginners/thread1076662.html
Здравствуйте, проблема с списками, после ввода элементов в список, не выводит первый добавленный. вот код: #include "stdafx.h" #include <iostream> using namespace std; typedef struct list { int id; char firma; int cena;
C++ графы и пути в них Помогите пожалуйста Написать программу отыскания кратчайших путей между всеми парами вершин ориентированного графа по его списковому представлению подробнее

Показать сообщение отдельно
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,396
21.01.2014, 01:03     operator()
Цитата Сообщение от Stason676 Посмотреть сообщение
спасибо за ответы, вопрос такой, если функция operator() находится в классе, то при использование объекта этого класса он как бы вызывается как функция? есть статья как и по каким правилам происходит анализ исходных текстов в си++? Спасибо.
Допустим у нас есть структура для сравнения строк
C++
1
2
3
4
5
6
7
struct Comp 
{ 
    bool operator()(const std::string &s1, const std::string &s2) const 
    { 
        return s1.length() < s2.length(); 
    } 
};
Так как для неё определен оператор (), то вызов ниже
C++
1
2
3
4
5
int main()
{
    const std::string s1 = "eniki beniki", s2 = "eli vareniki";
    std::cout << std::boolalpha << Comp()(s1,s2);
}
будет на самом деле рассмотрен как
C++
1
Comp().operator()(s1,s2);
то есть будет вызван конструктор по умолчанию и потом operator() с передачей ему двух строк в качестве аргументов. То же самое можно было бы задать так:
C++
1
2
Comp cmp;
std::cout << std::boolalpha << cmp(s1,s2);
Можете почитать Л.Аммерааль - STL для программистов на C++.
 
Текущее время: 21:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru