Как я могу преобразовать DateTimeField в Django из UTC в часовой пояс пользователя (обычно PST) при запросе модели Django?

То, что автоматически обрабатывается как rvalues, это вещи без имен, а вещи, которые (очень скоро) не будут иметь имени (в случае возвращаемого значения).

T&& t имеет имя, это t.

Причина, по которой rvalues ​​- это то, что ссылается на них после , что точка использования почти невозможна.

T&& является ссылкой типа rvalue. Ссылка rvalue может связываться только с rvalue (без участия static_cast), но в остальном это значение lvalue типа rvalue.

Тот факт, что он относится к типу rvalue, имеет значение только во время его построения , и если вы сделаете decltype(variable_name). В противном случае это просто другое значение ссылочного типа.

std::move(t) выполняет return static_cast<T&&>(t); и возвращает ссылку rvalue.

Правила, которые регулируют это, написаны стандартными в стандарте C ++. Копия / вставка из них не все так полезно, потому что их не так просто понять.

Первое общее правило: вы получаете неявный ход (aka, параметр, который привязывается к rvalue ссылочный аргумент), когда вы возвращаете именованное значение из функции или когда значение не имеет имени или когда функция явно возвращает ссылку rvalue.

Во-вторых, только ссылки rvalue и const& могут связываться на rvalues.

В-третьих, расширение жизненного цикла ссылки на временные значения происходит, когда напрямую связано с ссылкой вне конструктора. (поскольку только ссылки rvalue и const& могут напрямую привязываться к временному, это относится только к ним)

Forth, T&& не всегда является ссылкой rvalue. Если T имеет тип X& или X const&, тогда свертывание ссылки сворачивает T&& в X& или X const&.

Наконец, T&& в контексте вывода типа выводит T в качестве X, X&, X const& или X const&& в зависимости от типа аргумента и, следовательно, может выступать в качестве «ссылки пересылки».

0
задан Tim V 16 January 2019 в 00:06
поделиться