Daniil Petrov
> А чем они отличаются?
Одно в стандарте, второе нет.
> А как именно его использовать?
Типа using npc = std::chrono::high_resolution_clock;
PA3UJIb
> long long уже в С++11
Там лучше вообще использовать "родной" для таймера тип.
PA3UJIb
> using только в *.cpp, в заголовках всегда полные имена
$ cat t.h
#pragma once #include <chrono> class Class { public: using Clock = std::chrono::high_resolution_clock; using Time = std::chrono::time_point<Clock>; Time foo() const; };
$ cat t.cpp
#include "t.h" #include <iostream> Class::Time Class::foo() const { return Clock::now( ); } int main( void) { Class cl; auto t = cl.foo( ); std::cout << "since epoch: " << t.time_since_epoch( ).count( ) << std::endl; return 0; }
$ g++ -std=c++11 t.cpp -o t
$ ./t
since epoch: 275343384576195
Daniil Petrov
> > Теперь пришло время заменить __int64 на int64_t,
> А чем они отличаются?
Первое выдумка майкрософта, второе выдумка комитета по стандартизации языка с++.
Daniil Petrov
> А как именно его использовать?
http://en.cppreference.com/w/cpp/language/type_alias
Чуть выше я пример для PA3UJIb дал, там про использование.
andreyu
Да, работает! Хотя пока несколько непривычно, так как я привык использовать полные типы типа std::chrono::high_resolution_clock :)
Daniil Petrov
> тя привык использовать полные типы типа
> std::chrono::high_resolution_clock :)
Тогда вам стоит отказаться от auto ;)
andreyu
Уже не откажусь - так удобней :)
Daniil Petrov
Вы в коде не используете альясы, зачем тогда добавили их?
andreyu
1) Не надо на "Вы", терпеть не могу :)
2) Надо же совершенствовать свои познания!
andreyu
> Class::Time Class::foo() const
А что даёт указание const в конце определения функции? Аналог static?
Если да, то в чём между ними разница?
Iron Man
> А что даёт указание const в конце определения функции? Аналог static?
Говорит, что данный метод не изменяет класс.
Flyasd1
А что это значит? На счёт обычных констант всё понятно, а вот на счёт функций-констант ничего не пойму!
Iron Man
> А что даёт указание const в конце определения функции? Аналог static?
Обещает, что состояние объекта меняться не будет. Это совсем не аналог static.
> Если да, то в чём между ними разница?
Как разница между апельсином и яблоком - инструкции одного и того же языка, но несут разный смысл.
А за что Daniil Petrov забанили?
andreyu
> А за что Daniil Petrov забанили?
Некоторым иногда приходится говорить, кто они есть :) получается довольно красноречиво даже без матов...
Так что у меня абонемент в бан :)))
Iron Man
> А что это значит? На счёт обычных констант всё понятно, а вот на счёт
> функций-констант ничего не пойму!
Вот если вы создадите константный класс:
const SomeClass a;
То вы не сможете вызывать у него не константные методы, так как будет ошибка компиляции.
Тема в архиве.