QVariant::Reference Class
template <typename Indirect> class QVariant::ReferenceQVariant::Reference 는 QVariant 에 대한 비const 참조 역할을 합니다. 더 보기...
이 클래스는 Qt 6.11에서 도입되었습니다.
공개 함수
| Reference(Indirect &&referred) | |
| Reference(const Indirect &referred) | |
| Reference(const QVariant::Reference<Indirect> &) | |
| Reference(QVariant::Reference<Indirect> &&) | |
| ~Reference() | |
| operator QVariant() const | |
| QVariant::Reference<Indirect> & | operator=(QVariant::ConstReference<Indirect> &&value) |
| QVariant::Reference<Indirect> & | operator=(QVariant::Reference<Indirect> &&value) |
| QVariant::Reference<Indirect> & | operator=(const QVariant &value) |
| QVariant::Reference<Indirect> & | operator=(const QVariant::ConstReference<Indirect> &value) |
| QVariant::Reference<Indirect> & | operator=(const QVariant::Reference<Indirect> &value) |
상세 설명
제네릭 이터레이터는 각 단계에서 QVariant 를 실제로 인스턴스화하지 않으므로, operator*()를 통해 이에 대한 참조를 반환할 수 없습니다. QVariant::Reference<Indirect>는 QVariant 에 대한 실제 참조와 동일한 기능을 제공하지만, Indirect 유형의 참조 값을 기반으로 합니다. 이 템플릿은 QMetaSequence::Iterator 및 QMetaAssociation::Iterator에 대해 구현됩니다.
멤버 함수 문서
[explicit noexcept(...)] Reference::Reference(Indirect &&referred)
referred 를 사용하여 QVariant::Reference 를 생성합니다.
참고: std::is_nothrow_move_constructible_v<Indirect> 가 true 인 경우,이 함수는 noexcept입니다.
[explicit noexcept(...)] Reference::Reference(const Indirect &referred)
referred 에서 QVariant::Reference 를 생성합니다.
참고: std::is_nothrow_copy_constructible_v<Indirect> 가 true 인 경우,이 함수는 noexcept입니다.
[default] Reference::Reference(const QVariant::Reference<Indirect> &)
Reference 의 인스턴스를 복사 생성합니다.
[delete] Reference::Reference(QVariant::Reference<Indirect> &&)
Reference 의 인스턴스를 move-construct로 생성합니다. 이 함수는 삭제되었습니다.
[default] Reference::~Reference()
Reference 의 인스턴스를 삭제합니다.
[noexcept(...)] Reference::operator QVariant() const
QVariant 에 대한 참조를 해제합니다. 기본적으로 이 메서드는 임시 QVariant::ConstReference 객체를 인스턴스화한 다음, 이를 참조 해제합니다. 임시 ConstReference 객체를 인스턴스화하는 데 비용이 많이 드는 경우에는 이 메서드를 특수화해야 합니다.
참고: Indirect::CanNoexceptConvertToQVariant 가 true 인 경우,이 함수는 noexcept입니다.
[noexcept(...)] QVariant::Reference<Indirect> &Reference::operator=(QVariant::ConstReference<Indirect> &&value)
이 ` QVariant::Reference`가 가리키는 값에 새로운 ` value `를 할당합니다.
참고: Indirect::CanNoexceptAssignQVariant 가 true 인 경우,이 함수는 noexcept입니다.
[noexcept(...)] QVariant::Reference<Indirect> &Reference::operator=(QVariant::Reference<Indirect> &&value)
이 QVariant::Reference 가 가리키는 값에 새로운 value 를 할당합니다.
참고: Indirect::CanNoexceptAssignQVariant 가 true 인 경우,이 함수는 noexcept입니다.
[noexcept(...)] QVariant::Reference<Indirect> &Reference::operator=(const QVariant &value)
이 QVariant::Reference 가 가리키는 값에 새로운 value 를 할당합니다. 이 메서드는 각 Indirect 유형에 대해 특수화되어야 합니다. QMetaSequence::Iterator 및 QMetaAssociation::Iterator에 대해서는 미리 정의되어 있습니다.
참고: Indirect::CanNoexceptAssignQVariant 가 true 인 경우,이 함수는 noexcept입니다.
[noexcept(...)] QVariant::Reference<Indirect> &Reference::operator=(const QVariant::ConstReference<Indirect> &value)
이 ` QVariant::Reference`가 가리키는 값에 새로운 ` value `를 할당합니다.
참고: Indirect::CanNoexceptAssignQVariant 가 true 인 경우,이 함수는 noexcept입니다.
[noexcept(...)] QVariant::Reference<Indirect> &Reference::operator=(const QVariant::Reference<Indirect> &value)
이 ` QVariant::Reference`가 가리키는 값에 새로운 ` value `를 할당합니다.
참고: Indirect::CanNoexceptAssignQVariant 가 true 일 때,이 함수는 noexcept입니다.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.