strawberry233
2016-03-23 02:35
采纳率: 50%
浏览 1.8k
已采纳

mfc中定义大量宏的问题

我定义了大量的宏,在cmainframe和一个共有类(用于存放一些静态函数和变量,主要是为了线程函数中使用全局变量)中里面的一个函数中需要使用到,我直接把它们放在一个头文件中然后include,就报了
error LNK2005: "struct Zeni_MTS_Rolypon_InOut InOutRoly" (?InOutRoly@@3UZeni_MTS_Rolypon_InOut@@A) already defined in bowei.obj这样一堆问题。

还想问问,线程函数只能是全局或者静态函数,那在MFC它们应该在哪被定义。我之前是定义在Cxxxapp的theapp下面,不知道这样对不对。求教!!!!!!

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 天已青色等烟雨来 2016-03-23 03:39
    已采纳

    根据描述像是头文件的多次引用问题,头文件加#pragma once 或者把定义的东西用ifdef endif 包起来

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • lx624909677 2016-03-23 04:26

    线程函数可以是类的成员函数,做成友元的就可以了

    评论
    解决 无用
    打赏 举报
  • strawberry233 2016-03-23 11:43

    自己已经找到问题,谢谢楼上两位!

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题