如代码:
#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 个 ==========
请问这是怎么回事儿?
解决方案 »
- 在模态对话框中打开txt文件的问题
- 为什么我的MFC对话框无缘无故多了两个线程呢
- typedef screen& (screen::*Action)()???????
- 单文档背景图片的显示问题
- 像QQ和YAHOO MESSANGER那样的情景对话是怎样实现的啊?
- 怎样隐藏CEdit的光标?
- 请问:如果已知对方的口令和密码,如何能访问该机器的各驱动器?
- 请问 AbsolutePosition 和 AbsolutePage 有何不同?
- 急啊!!!!!!!!!发传真是不是一定要有调制解调器才行啊?
- 先学MFC好,还是先学Windows api好?
- 了解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>