Результаты поиска по запросу "c++11"
Как получить псевдоним «constexpr and runtime»
Constexpr может быть полезен для оптимизации компиляции. Например... strlen(char*)Может быть скомпилирован с использованием .... constexpr inline size_t strlen_constexpr(char* baseChar) { return ( ( baseChar[0] == 0 ) ?(// if { 0 )// } :(// ...
Можно ли использовать пакеты параметров c ++ 11 вне шаблонов?
Мне было интересно, могу ли я иметь пакеты параметров, состоящие из одного, явно определенного типа. Например, что-то вроде этого: #include <iostream> using namespace std; void show() { } template<typename First, typename... Rest> void ...
который GCC не распознает, но Clang делает.
+ 03 следующее недопустимо, хотя некоторые компиляторы поддерживают это. template <class T> class X { friend T; };Это было узаконено в C ++ 11? (Извините, я не успел прочитать черновик, просто надеясь, что кто-то это знает)
Оптимизация возвращаемого значения и побочные эффекты
Оптимизация возвращаемого значения (RVO) - это метод оптимизации, включающий удаление копии, который исключает временный объект, созданный для хранения возвращаемого значения функции в определенных ситуациях. Я понимаю преимущества RVO в целом, ...
) были повторно добавлены.
могу получить CodeBlocks для компиляции с -std = c ++ 0x с gcc? Я хотел бы видеть, рассматривают ли они новые функции с полезной подсветкой синтаксиса. Кроме того, у меня много вещей на C ++ - 0x сейчас.
@jakar: проблема в том, что gcc, MS и Clang внедрили разные подмножества, и даже реализованные подмножества иногда отличаются, потому что они не основаны на одном и том же проекте стандарта (или из-за прямого решения об ошибках / разработках). Важно на самом деле реализовать функциональность, получить обратную связь и посмотреть, сработают ли они, прежде чем стандартизировать их, конечно! Однако, если вам нужно работать с несколькими компиляторами, я бы посоветовал воздержаться от использования самых «продвинутых» функций C ++ 0x. Кортежи и шаблоны variadic, кажется, работают довольно хорошо на clang и gcc, а лямбды - нет: /
сно ответам и комментариям дляэтот вопрос [https://stackoverflow.com/q/5470174/320418]когда переменная ссылки захватывается значением, лямбда-объект должен делать копию ссылочного объекта, а не саму ссылку. Однако GCC, похоже, этого не ...
по мере того, как компиляторы набирают скорость с C ++ 0x и реализации становятся зрелыми
отрим случай, когда «целые» объекты с включенной семантикой перемещения возвращаются из функций, как сstd::basic_string<>: std::wstring build_report() const { std::wstring report; ... return report; } Можно ли реально ожидать, что я сделаю ...
Отлично компилируется на VC10 SP1:
+ 03 вы можете использоватьconst& хитрость (или «самый важный const») для продления времени жизни временного объекта до времени жизни ссылки. Мой вопрос в C ++ 0x распространяется ли это поведение на ссылки на значения? т.е.auto&& x = someFunction();
на несортированных данных, и на самом деле гораздо хуже на отсортированных данных.
таю, что стандарт C ++ дляstd::sort [http://en.cppreference.com/w/cpp/algorithm/sort]не гарантирует производительность O (n) в списке, который уже отсортирован. Но все же мне интересно, насколько вам известно, какие реализации STL (GCC, MSVC и т. ...
std :: vector <Foo>, когда некоторые члены Foo являются ссылками
Я часто предпочитаю использовать ссылки, а не указатели, когда это возможно, это делает синтаксис более чистым, по моему мнению. В этом случае у меня есть класс: class Foo { public: Foo(Bar & bar) : bar_(bar) {} private: Bar & bar_; ...