c++ - 在 C++ 中为结构实现索引器

标签 c++ qt qt5

我在 c++/qt 中有以下三角形结构,我想为它实现一个索引器,以便我可以通过索引访问任何顶点,有人可以帮我解决这个问题吗?

结构如下:

struct Triangle
{
    QVector3D *a;
    QVector3D *b;
    QVector3D *c;
}

最佳答案

如果你真的需要它,你可以像这样将 operator [] 添加到你的类中:

struct Triangle
{
QVector3D *a;
QVector3D *b;
QVector3D *c;
QVector3D * operator[](int n) {return n==0?a:n==1?b:n==2?c:Q_NULLPTR;}
};

Triangle tr; 
//.....
auto test = tr[0]; //will return vector 'a'

关于c++ - 在 C++ 中为结构实现索引器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56964933/

相关文章:

c++ - 如何在 QScintilla 编辑器小部件中取消选择/取消突出显示选定和突出显示的文本?

linux - Qt5库被误删

c++ - const 方法中 decltype 的结果

c++ - boost::单位::数量 "incomplete type"错误

c++ - C++输出到文件不正确?

javascript - 如何捕捉和处理 QWebEnginePage 内容的变化?

qt - Qt Model/View 编程设计模式是否受到限制?

c++ - 编译器报告 'deleted' operator = ,但它在那里

c++ - 返回对私有(private)成员与公共(public)成员的引用

c++ - Qt5、Coin3D 和 SoQt