错误:名称后跟“::”必须是类或命名空间名称

问题描述 投票:0回答:2

我正在尝试构建我的第一个 ATL DLL 项目,其中我使用 ADODB。这里的问题是我给每个 ADODB 类都加了下划线

ADODB::_ConnectionPtr spADOConnection;

当我将鼠标移到

ADODB::_ConnectionPtr
上时,我得到
name followed by '::' must be a class or namespace name
spADOConnection
我得到
expected a ';'
。请问这是什么意思?请问我该如何解决?

非常感谢!

c++
2个回答
17
投票

编译器无法找到

ADODB
的声明。确保在编译器抱怨的翻译单元中包含相关标头。


0
投票

我在 Visual Studio 2022 中遇到了同样的问题。#import 行,

#import "C:/Program Files/Common Files/System/ado/msado15.dll" rename("EOF", "adoEOF") rename("BOF", "adoBOF")

需要放在任何引用之前。就我而言,我将它放在实现文件的顶部附近,但我需要将它放在包含文件的顶部附近以传递类型指针。

© www.soinside.com 2019 - 2024. All rights reserved.