【发布时间】:2025-12-29 08:20:08
【问题描述】:
您好,我正在尝试转发声明 cv::Mat 类,但我无法让它工作。它给出消息字段“框架”的类型不完整。
OpenGlImpl.h
namespace cv {
class Mat;
}
class OpenGLImpl {
private:
cv::Mat frame;
};
我应该如何正确转发声明?
【问题讨论】:
-
为什么#include
不起作用? -
#include "opencv2/core/core.hpp"
-
您不能转发声明成员变量(或基类),因为它会影响您的类的大小。您可以使用不会影响大小的指针等的东西
-
这个问题*.com/questions/553682/… 明确列出了您可以/不能转发声明的时间和内容
-
ChronoTrigger 和 banuj 我不想将所有这些方法都包含在我的标题中。我想把事情分开,只使用我的 cpp 文件中的方法,我将在其中包含标题。