Вопросы по теме 'auto'
Опасен ли автоматический тип С++ 11?
Возможный дубликат: Как слишком много с ключевым словом C++0x auto Новое ключевое слово auto; Когда его следует использовать для объявления типа переменной?
В C++11 ввод переменной auto вместо, скажем, int позволит компилятору...
5584 просмотров
schedule
27.06.2023
Как выбрать тип итератора с помощью автоматической переменной?
У меня есть std::unordered_map
std::unordered_map<std::string, std::string> myMap;
Я хочу получить итератор const, используя find. В С++ 03 я бы сделал
std::unordered_map<std::string, std::string>::const_iterator =...
6732 просмотров
schedule
22.03.2022
взять адрес функции-члена, не обращаясь к классу экземпляра по конкретному имени?
Теперь, когда у нас есть ключевое слово auto , я хотел бы получить адрес члена экземпляра класса без необходимости статически ссылаться на его класс.
например (старая школа)
MyInterestingClass & foo = m_holder.GetInteresting();...
143 просмотров
schedule
06.02.2024
Является ли `auto x = f()` лучше, чем `T x = f()`?
В другой теме кто-то предложил использовать
auto x = f();
вместо
T x = f();
(если подпись f T f() ). Они указали, что это предотвращает нарезку скрытых объектов, если кто-то меняет f на U f() , где U происходит от T ....
263 просмотров
schedule
09.03.2022
Проблема времени жизни объекта с циклом for на основе диапазона
В настоящее время я преобразовываю свой код в С++ 11, и у меня возникают проблемы со следующим циклом for на основе диапазона (FWIW, тот же код раньше работал нормально с BOOST for_each).
Элемент mLibraryFiles (вектор STL) является частью...
296 просмотров
schedule
12.10.2022
Функция C ++ с переменным типом возвращаемого значения с использованием 'auto'
Я пытаюсь написать функцию, которая возвращает различные типы в зависимости от оператора if.
auto parseParameterValue(QString aParameterValueString, int aParameterType)
{
if(aParameterType == 0)
{
int result =...
1873 просмотров
schedule
10.07.2023
Почему существует разница между шаблоном и автоматическим выводом типа для краевого случая std::initializer_list?
По сути, в C++11 существует три типа вывода типов:
шаблоны
auto
decltype
В большинстве случаев вывод типа auto и шаблонов, по-видимому, действует одинаково. Но есть один случай - когда мы устанавливаем переменную auto в...
51 просмотров
schedule
25.11.2022
Возврат константного указателя на константный член данных и ключевое слово auto. Немного запутался
Я недавно изучал C++ и только сегодня познакомился с const и концепцией корректности const. Пытаясь лучше понять теорию, я написал серию простых программ, чтобы убедиться, что я правильно понимаю концепцию. Я думал, что все понял, но потом при...
3955 просмотров
schedule
20.02.2022
Когда компилятору разрешено оптимизировать инициализацию стиля авто + скобки?
Предположим, у вас есть класс под названием Product, определенный следующим образом:
class Product
{
public:
Product(const char *name, int i);
Product(Product &&rhs);
Product(const Product &rhs);...
182 просмотров
schedule
08.02.2022
Предоставление функций-членов класса с выведенными типами
Я пытаюсь написать класс интерфейса, в котором пользователь предоставляет свою реализацию в виде DLL. В рамках этого интерфейса есть некоторые функции-члены, которые возвращают выведенный тип, определенный во время выполнения, например:
auto...
82 просмотров
schedule
17.12.2023
Является ли auto необязательным ключевым словом в диапазоне циклов for?
Я помню, как кто-то однажды сказал мне,
«нет необходимости в auto внутри циклов for на основе диапазона. Это не было бы двусмысленным в языке, если бы мы удалили его».
Верно ли это утверждение? Является ли следующий код допустимым...
862 просмотров
schedule
10.11.2022
В контексте приведенного ниже кода, почему cout ‹‹ c является допустимым, а c = x недопустимым?
Я новичок в С++ и пытаюсь изучить концепцию ключевого слова "авто" и ссылки. Я видел этот вопрос и ответ в Интернете.
Является ли следующий диапазон законным? Если да, то какой тип c?
const string s = "Keep out!";
for (auto &c : s){...
78 просмотров
schedule
25.03.2024
Тип переменной «Копировать» из другой переменной
С добавлением ключевого слова «auto» в С++ 11 мне было интересно, можно ли «скопировать» тип другой переменной или возвращаемый тип функции.
Например, в этом коде:
unsigned short x;
[...] // x is initialized with some value
for(auto...
925 просмотров
schedule
30.12.2022
Каковы правила вывода типов для auto*?
Каковы правила вывода типов для auto* ?
Рассмотрим следующее:
int x = 64;
int* px = &x;
auto* v1 = &x; // auto => ??? ok v1 is int* ...
auto* v2 = px; // auto => ??? is v2 int* ?
auto* v3 = &px; // auto =>...
1350 просмотров
schedule
20.10.2022
Есть ли в С++ механизм для создания полной копии производного класса из указателя базового класса без динамического выделения памяти?
Рассмотрим следующий пример, в котором нарезка объекта происходит во время разыменования базового указателя.
#include <stdio.h>
class Base {
public:
virtual void hello() {
printf("hello world from base\n");
}
};
class...
128 просмотров
schedule
19.07.2022
Можно ли повторно объявить переменную как auto, которая выводится к тому же типу?
Разрешено ли стандартом следующее?
#include <iostream>
extern int a;
auto a = 3;
int main(int, char**)
{
std::cout << a << std::endl;
return 0;
}
clang принимает код. g++ жалуется на противоречивое объявление.
488 просмотров
schedule
23.07.2022
Преобразование const auto & в итератор
Ряд сообщений, которые я прочитал в последнее время, утверждают, что for(const auto &it : vec) совпадает с использованием более длинного синтаксиса итератора for(std::vector<Type*>::const_iterator it = vec.begin(); it != vec.end(); it++)...
894 просмотров
schedule
16.05.2022
Clang++ ошибка типа автоматического возврата для специализации шаблонного метода в шаблонном классе?
Пытаясь понять другой вопрос , я упростил пример, получив следующий код.
template <bool>
struct foo
{
template <typename T>
auto bar (int i)
{ return i; }
};
template <>
template <typename T>
auto...
195 просмотров
schedule
27.02.2024
Ключевое слово `new` в сочетании с` auto`
Что значит
new (&as_string) auto(other.as_string);
делать где as_string это std::string объект? Я вижу, что auto(other.as_string) создает новую копию other.as_string , но что вызывает (&as_string) в сочетании с новым?
30 просмотров
schedule
24.09.2023
Что такое синтаксис автоматического списка в квадратных скобках?
WF. дал теперь удаленный ответ на мой вопрос здесь , где использовалась строка:
auto [x, y] = div_t{ 1, 0 };
Судя по коду в ответе, это похоже на tie для структуры div_t . Я надеялся, что кто-нибудь сможет объяснить, что здесь...
134 просмотров
schedule
30.11.2022