Ссылки в C++ экранируют меня.:) Основная идея состоит в том, что я пытаюсь возвратить объект из функции. Я хотел бы сделать это, не возвращая указатель (потому что затем я должен буду вручную удалить его)...
Короткая версия: распространено возвратить большие объекты — такие как векторы/массивы — на многих языках программирования. Этот стиль, теперь приемлемый в C++ 0x, если класс имеет конструктора перемещения, или сделайте C++...
Чтение этой статьи Wikipedia, на которую указывает один из repliers к следующему вопросу: конструктор Копии C++, временные файлы и семантика копии я столкнулся с этой строкой В зависимости от компилятора...
В предыдущем вопросе казалось, что простая функция возврата значением всегда копирует свой возвращаемый аргумент в переменную, присваиваемую от него. Требуемый стандартом, или может...
Я имею, идут очень простой вопрос, но к сожалению я не могу изобразить ответ сам. Предположим, что у меня есть некоторая структура данных, которая содержит настройки и действия как карта настроек. У меня есть GetValue (станд. константы::...
Из следующего кода, Если RVO произошел, я ожидаю видеть, что 2 адреса указывают на то же местоположение, однако дело обстоит не так (мой компилятор MS VC9.0), #include <iostream> #include и...
Рассмотрите три функции. станд.:: представьте get_a_string в виде строки () {возврат "привет";} станд.:: представьте get_a_string1 в виде строки () {станд. возврата:: строка ("привет");} станд.:: представьте get_a_string2 в виде строки
Как Вы идете об использовании оптимизации возвращаемого значения? Есть ли любые случаи, где я могу доверить современный компилятор для использования оптимизации, или если я всегда иду безопасным путем и возвращаю указатель...
Этот вопрос был вызван путаницей в отношении RVO в C ++ 11. У меня есть два способа «вернуть» значение: возврат по значению и возврат через ссылочный параметр. Если я не рассматриваю производительность, я предпочитаю ...
извините за такой длинный вопрос, но я постараюсь быть максимально ясным. Это как-то связано с моим предыдущим вопросом о строках в C ++. Я пытаюсь понять, как мне вернуть std :: string из ...
Прежде, чем кто-то прыгнет и скажет Profile перед оптимизацией !, это просто вопрос из любопытства, связанный с этим исходным вопросом. Если я возвращаюсь по ссылке на тот же объект, будет ли он ...
Этот вопрос находится в другом аспекте ( также ограничивается gcc). Мой вопрос предназначен только для безымянных объектов. Оптимизация возвращаемого значения позволяет изменять наблюдаемое поведение результирующего ...
Можно ли отключить RVO (оптимизацию возвращаемого значения) в Visual Studio 2010? Установка флага оптимизации в /Od (отключает все оптимизации) не помогает. В g++ есть флаг -fno-elide-...
Допустим, у нас есть следующий код: std :: vector f ()
{std :: vector y; ... вернуть y;
} std :: vector x = ...
х = f (); Кажется, у компилятора есть два подхода ...
Представьте: S f (S a) {return a;
} Почему не разрешено использовать псевдоним a и слот возвращаемого значения? S s = f (t);
S s = t; // обычно не может преобразовать его в это :( Спецификация этого не допускает ...
Мен std :: vector (немесе басқа STL контейнерін) толтырғым келеді: класс Foo {
көпшілікке арналған: Foo (int _n, const Bar & _m);
жеке: std :: vector fooes_;
} 1. Жақсы көрінетін ктор, қымбат өнімділігі
...
использование VS 2010 с полной оптимизацией /Ox посмотрите на следующие два вызова функций: static string test1(const string& input)
{возвратный ввод;
} static void test2(const string& input, ...
Во время вчерашнего собеседования по программированию одна из программ, которые мне нужно было написать, имела что-то вроде этой:struct Blob { // основное поле, содержащее статистику блоба изображения. }; std::vector&...
Допустим, я хочу реализовать функцию, которая должна обрабатывать объект и возвращать новый (возможно измененный)объект. Я хотел бы сделать это максимально эффективно в C + 11. Окружение такое...
Я хотел бы убедиться, что мои процедуры используют (N)RVO, когда это возможно. Есть ли что-то, что я могу сделать или проверить, кроме синтаксического анализа полученного дизассемблированного кода, чтобы узнать, выполняется ли подпрограмма...
Я знаю, что обычно не рекомендуется возвращать с помощью std: : move, т.е. bigObject foo () {bigObject result; /*...*/ return std :: move (результат); } вместо просто bigObject foo () {bigObject ...
Это указано в [C ++ 11: 12.8 / 31]: Это исключение операций копирования / перемещения, называемое копированием, разрешено [...]: - в операторе return в функции с типом возвращаемого значения, когда ...
Например, у нас есть функция кодирования. Что лучше всего использовать: void Crypto :: encoding (string & input, string & output)
{// кодировка строки output = encoded_string;
} или ...
В программе, которую я пишу, я должен передавать большие структуры данных (изображения) между функциями. Мне нужно, чтобы мой код работал как можно быстрее в разных ОС (таким образом, я не могу профилировать все тестовые примеры). Я ...
Я борюсь со следующим предложение сейчас, и я хочу знать юридические и, в меньшей степени, моральные аргументы против него или за него. Что у нас было: #include class T; класс C
{
public: C () ...