如代码:
#include <Windows.h>
#include <atltypes.h>
int main()
{
CPoint a;
}编译没错误,可链接时出现如下错误:
1>------ 已启动生成: 项目: 测试, 配置: Debug Win32 ------
1>生成启动时间为 2012/9/27 21:34:11。
1>InitializeBuildStatus:
1> 正在创建“Debug\测试.unsuccessfulbuild”,因为已指定“AlwaysCreate”。
1>ClCompile:
1> Main.cpp
1>Main.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CPoint::CPoint(void)" (??0CPoint@@QAE@XZ),该符号在函数 _main 中被引用
1>E:\Projects\C++\测试\Debug\测试.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>
1>生成失败。
1>
1>已用时间 00:00:03.60
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
当改成:
#include <Windows.h>
#include <atltypes.h>
int main()
{
CPoint a();
}会出现:
1>------ 已启动生成: 项目: 测试, 配置: Debug Win32 ------
1>生成启动时间为 2012/9/27 21:36:13。
1>InitializeBuildStatus:
1> 正在对“Debug\测试.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1> Main.cpp
1>e:\projects\c++\测试\测试\main.cpp(6): warning C4930: “CPoint a(void)”: 未调用原型函数(是否是有意用变量定义的?)
1>Link:
1> 测试.vcxproj -> E:\Projects\C++\测试\Debug\测试.exe
1>FinalizeBuildStatus:
1> 正在删除文件“Debug\测试.unsuccessfulbuild”。
1> 正在对“Debug\测试.lastbuildstate”执行 Touch 任务。
1>
1>生成成功。
1>
1>已用时间 00:00:03.41
========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ==========
请问这是怎么回事儿?
#include <Windows.h>
#include <atltypes.h>
int main()
{
CPoint a;
}编译没错误,可链接时出现如下错误:
1>------ 已启动生成: 项目: 测试, 配置: Debug Win32 ------
1>生成启动时间为 2012/9/27 21:34:11。
1>InitializeBuildStatus:
1> 正在创建“Debug\测试.unsuccessfulbuild”,因为已指定“AlwaysCreate”。
1>ClCompile:
1> Main.cpp
1>Main.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CPoint::CPoint(void)" (??0CPoint@@QAE@XZ),该符号在函数 _main 中被引用
1>E:\Projects\C++\测试\Debug\测试.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>
1>生成失败。
1>
1>已用时间 00:00:03.60
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
当改成:
#include <Windows.h>
#include <atltypes.h>
int main()
{
CPoint a();
}会出现:
1>------ 已启动生成: 项目: 测试, 配置: Debug Win32 ------
1>生成启动时间为 2012/9/27 21:36:13。
1>InitializeBuildStatus:
1> 正在对“Debug\测试.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1> Main.cpp
1>e:\projects\c++\测试\测试\main.cpp(6): warning C4930: “CPoint a(void)”: 未调用原型函数(是否是有意用变量定义的?)
1>Link:
1> 测试.vcxproj -> E:\Projects\C++\测试\Debug\测试.exe
1>FinalizeBuildStatus:
1> 正在删除文件“Debug\测试.unsuccessfulbuild”。
1> 正在对“Debug\测试.lastbuildstate”执行 Touch 任务。
1>
1>生成成功。
1>
1>已用时间 00:00:03.41
========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ==========
请问这是怎么回事儿?
解决方案 »
- 如何用鼠标在桌面上绘制任意曲线?
- 多播问题
- VC里用MFC写简单C/S用CAsyncSocket,问题是我的程序只能发一次信息
- 为什么窗口类的子类不能够响应父类的OnClose函数呢?
- 新手问题:关于CBitmap,请问加上这两句坐标模式转换的语句,为什么不能够正常运作?
- 我想打印listCtrl内的数据,该怎么做?这里欧一段代码请大家帮忙看看。
- CScrollView的SetScrollSize怎么不管用,请高手指点!
- 散分,来着有分!询问面试要求的具体情况!共同建立公司软件开发Team,协力进行公司ERP, MIS, e化系统的开发工作!!
- CString&UINT
- 关于使用注册表。。
- 了解MFC自定义控件的给意见了
- VS2008 编译64位库问题
但CPoint a;就是不行,而且MSDN上只说了“atltypes.h”头文件
{
CPoint a;
}
没问题
#include <afxwin.h>
#include <Windows.h>void main()
{
CPoint a;
} 记得在
Project->setting->Microsoft foundation Classes中选取
use MFC in shared DLL
我当楼主是在研究呢。Property->General->Use of MFC ->Use MFC in a Shared DLL
atltypes.h
atltypes.inl
atltypes.cpp
都添加到工程里
#include<afx.h>