VC++的接口问题,来个人帮解决下吧

您好,我想请问下,我一个头文件比如interface.h然后里面有interfaceIController(...);然后在调用的时候呢,#include"interfa... 您好,我想请问下,我一个头文件比如interface.h然后里面有interface IController(...); 然后在调用的时候呢,#include "interface.h" 这个时候每次都是提示interface.h里面missing ';' before identifier 'IController',编译过不了。帮忙一下谢谢!!
#pragma once
interface IController
{
virtual void draw(HWND wnd, RECT & rc) PURE;
virtual void on_btn_up_pressed() PURE;
virtual void on_btn_left_pressed() PURE;
virtual void on_btn_right_pressed() PURE;
virtual void on_btn_down_pressed() PURE;
};
这个接口
展开
 我来答
hekello
2013-04-15 · TA获得超过169个赞
知道答主
回答量:90
采纳率:100%
帮助的人:32.3万
展开全部
加一句#define struct interface或者包含一个头文件,里面有interface定义的。好郁闷,我找遍了msdn和百度,goole就是找不到interface在哪个头文件定义的。万般无奈之下,我搜索了include文件夹下的文件,才找到是在objbase.h头文件里面定义的
追问
我加了,错误还是这个,完全没变..............接口的功能和结构差不多,里面全是接口,所以不是关键字的问题,在帮忙找找,谢谢了额,我也在找!
追答

你写了#include<windows.h>吗,我不懂com,看了你的代码,以为你懂com,是高手,不会犯低级错误吧,所以没在意。我的代码在vc6.0是

#pragma once
#include<windows.h>
#include<objbase.h>
interface IController
{
virtual void draw(HWND wnd, RECT & rc) PURE;
virtual void on_btn_up_pressed() PURE;
virtual void on_btn_left_pressed() PURE;
virtual void on_btn_right_pressed() PURE;
virtual void on_btn_down_pressed() PURE;
};

可以通过编译的。

cooke1234
2013-04-15 · TA获得超过6861个赞
知道大有可为答主
回答量:4617
采纳率:72%
帮助的人:3696万
展开全部
把interface IController修改成class IController。
因为C++中没有interface关键字,请用抽象类来代替。
追问
vc6.0里面interface是关键字啊,还有,别人给的题目面里面就是这样的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
BB丶J
2013-04-15 · 超过10用户采纳过TA的回答
知道答主
回答量:24
采纳率:0%
帮助的人:28.5万
展开全部
interface IController(...);这里 感觉你的interface可能有问题 仔细看看interface到底是什么 是不是可以用来做类型名

哦 抱歉 我以为是定义的一个函数 看错了
追问
我面试的一个题目
#pragma once
interface IController
{
virtual void draw(HWND wnd, RECT & rc) PURE;
virtual void on_btn_up_pressed() PURE;
virtual void on_btn_left_pressed() PURE;
virtual void on_btn_right_pressed() PURE;
virtual void on_btn_down_pressed() PURE;
};
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xoaxa
2013-04-15 · TA获得超过8613个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3596万
展开全部
编译信息是缺少(适配)分号,应该很容易查出来的。如果可能的话,请把代码发上来。
追问
请编写一个dll,这个dll能与我们提供的exe(初试D.exe)工作,在exe的界面上绘制我们提供的图片test.jpg。    我面试的一个题目
#pragma once
interface IController
{
virtual void draw(HWND wnd, RECT & rc) PURE;
virtual void on_btn_up_pressed() PURE;
virtual void on_btn_left_pressed() PURE;
virtual void on_btn_right_pressed() PURE;
virtual void on_btn_down_pressed() PURE;
};
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式