我在myView中定义了一个
LPCRSTR pText;
在myDlg中我又引用它,所以在头文件中加上一句:
extern  LPCRSTR pText;
然后在后面用--
但是运行时老报错:error LNK2001:unresolved external symbol "char const *const pText"(?Text@@3PBDB)
                fatal error LNK1120:1 unresolved externals
谁能告诉我是怎么回事吗?

解决方案 »

  1.   

    把extern  LPCTSTR pText; 放到stdafx.h中试试
      

  2.   

    LPCTSTR pText;是全局变量 ,还是成员变量啊?
      

  3.   


    对话框要访问view的变量,先获得view的指针
      

  4.   

    按4楼的方法做就没错啦不要加这句extern  LPCRSTR pText;
      

  5.   

    你在myView.h中加的extern LPCTSTR pText?
    在用到pText的.cpp中
    #include "myview.h"
    extern LPCTSTR pText;
      

  6.   


    error LNK2001:unresolved external symbol "char const *const pText"(?Text@@3PBDB) 
    报这个错误,显然不是没有在头文件里面申明的缘故,这个是连接时找不到你定义的那个变量。如果是没有在头文件里面申明,编译的时候就会报错。如同8楼说得那样将你的变量定义
    LPCTSTR pText;
    放在myView.cpp里面,而不要放在你的myViwe类里面,这是最简单的方法。
      

  7.   

    首先LPCRSTR pText;是View的成员变量不,如果是成员变量,你加extern是没用的
      

  8.   

    你在其他cpp里用extren引用了这个全局常变量,而这个变量又没有定义
      

  9.   

    1、
    在myView.cpp中定义了一个 全局的变量
    LPCRSTR pText; 
    在myDlg.cpp中我又引用它,所以在myDlg.cpp文件中加上一句: 
    extern  LPCRSTR pText; 2、
    在myView的类中定义了一个成员变量
    LPCRSTR pText; 
    在myDlg中我又引用它
    需要得到该myView的指针,然后才能访问类的成员变量。3、
    在myView.h中定义了一个 全局的变量
    LPCRSTR pText; 
    在myDlg.cpp中我又引用它,所以在myDlg.cpp文件中加上一句: 
    #include "myView.h"
      

  10.   

    现在我按各位前辈所说,把LRCRSTR pText;放到了myView.cpp中,然后再在myDlg中加入一句extern  LPCRSTR pText; 运行还是有错误,
    errror c2143:syntax error:missing ';'before identifier 'pText'
    fatal error c1004:unexpected end of file found
    如果把LRCRSTR pText放到myView.h中,如果在myDlg加入#include "myview.h",运行还是有错误(这个错误我一直不知道怎么解决):
    error c2143:syntax error:missing ';'before '*'
    error c2501:'CMyDoc':missing storage-class or type specifiers
    error c2501:'Get Document':missing  storage-class or type specifiers
    怎么会这样子呢?
      

  11.   

    是 LPCTSTR pText;
    而非LRCRSTR pText;