当前位置:首页 » 编程软件 » VSmfc编译

VSmfc编译

发布时间: 2022-06-14 22:05:47

1. VS2010新建MFC工程直接编译运行居然出错!求解!

改成这样试试,
#include"stdio.h"
typedef struct list
{
struct list *next;
int data;
}list;
void main()
{
list p;
}
在struct list被typedef定义成list之前,它应该还是结构体,所以可能是因为这样,不能省略定义成员变量时的那个struct

2. vs中使用mfc,编译成功但不生成.exe文件,是怎么回事啊

SLEI.exe就是生成的文件,画面上都显示出名字来了,好好找好。

3. VS2013新建了个MFC应用程序,新建好编译就出现问题,我没修改任何数据,求助

参考warning D9025: 正在重写“/D_DEBUG”(用“/U_DEBUG”)的错误。的解决思路
在 Visual Studio 开发环境中设置此编译器选项
打开该项目的“属性页”对话框。有关详细信息,请参见如何:打开项目属性页。
单击“C/C++”文件夹

单击“预处理器”属性页。

修改“取消预处理器定义”属性。
_DEBUG修改成 U_DEBUG即可
_DEBUG;%()变成U_DEBUG;%()
https://msdn.microsoft.com/zh-cn/library/hhzbb5c8(v=vs.80).aspx

4. 支持MFC的编译器只有VC++6.0和vs吗

支持MFC的编译器有VC++(不一定要是6.0版的),还有新版的Borland C++

旧版的 Borland C++ 不支持 MFC ,但是新版的 Borland C++ 支持 MFC 。

所有版本的 VC(从 Visual C++ 1.0 到 Visual C++ 6.0)和 VC.NET(从 Visual C++ 2003 到 Visual C++ 2010 ),全部都支持 MFC 。

5. VS 2012 MFC刚创建完编译就出错

先搞个hello world编译运行看看
系统文件出错一般是配置有问题,或自己生成的文件是c风格的

6. 用vs2008编译MFC程序时为什么老是出现这个警告如图

因为xInsert.size()函数返回的是无符号型的,而你的i3是有符号的,所以会警告。


你可以这样:

for(unsignedinti3=1;i3<xInsert.size();++i3)



参考:

template<class_Ty,class_A=allocator<_Ty>>
classlist{
public:
typedef_A::size_typesize_type;


template<class_Ty>
classallocator{
public:
typedef_SIZTsize_type;
#define_SIZT	size_t
typedefunsignedintsize_t;

7. VS2010 MFC程序编译时出现如下错误,请问哪位高手能够指点一下是什么情况,多谢多谢!!

今天写了一个小程序,然后碰到了“Error LNK2001 无法解析的外部符号”这个问题,一直解决不了,后来上网搜了下,发现这里面的关于这类错误的内容归纳比较齐全,就摘下来作为参考了。
原文: http://wenku..com/view/8f0e877931b765ce0508141a.html
VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误,常常使人不明其所以然。如果不深入地学习和理解VC++,要想改正连接错误LNK2001非常困难。 初学者在学习VC++的过程中,遇到的LNK2001错误的错误消息主要为: unresolved external symbol “symbol”(不确定的外部“符号”)。如果连接程序不能在所有的库和目标文件内找到所引用的函数、变量或标签,将产生此错误消息。一般来说,发生错误的原因有两个:一是所引用 的函数、变量不存在、拼写不正确或者使用错误;其次可能使用了不同版本 的连接库。
以下是可能产生LNK2001错误的原因:
一.由于编码错误导致的LNK2001。
1.不相匹配的程序代码或模块定义(.DEF)文件能导致LNK2001。例如, 如果在C++ 源文件内声明了一变量“var1”,却试图在另一文件内以变量 “VAR1”访问该变量, 将发生该错误。
2.如果使用的内联函数是在.CPP文件内定义的,而不是在头文件内定义将导致LNK2001错误。

3.调用函数时如果所用的参数类型同函数声明时的类型不符将会产生LNK2001。
4.试图从基类的构造函数或析构函数中调用虚拟函数时将会导致LNK2001。
5.要注意函数和变量的可公用性,只有全局变量、函数是可公用的。静态函数和静态变量具有相同的使用范围限制。当试图从文件外部访问任何没有在该文件内声明的静 态变量时将导致编译错误或LNK2001。函数内声明的变量(局部变量) 只能在该函数的范围内使用。C++ 的全局常量只有静态连接性能。这不同于C,如果试图在 C++的多个文件内使用全局变量也会产生LNK2001错误。一种解决的方法是需要时在 头文件中加入该常量的初始化代码,并在.CPP文件中包含该头文件;另一 种 方法是使用时给该变量赋以常数。
二.由于编译和链接的设置而造成的LNK2001
1.如果编译时使用的是/NOD(/NODEFAULTLIB)选项,程序所需要的运行库和MFC库在连接时由编译器写入目标文件模块, 但除非在文件中明确包含这些库名,否 则这些库不会被链接进工程文件。在这种情况下使用/NOD将导 致错误LNK2001。

2.如果没有为wWinMainCRTStartup设定程序入口,在使用Unicode和MFC时将得到“unresolved external on _WinMain@16”的LNK2001错误信息。

3.使用/MD选项编译时,既然所有的运行库都被保留在动态链接库之内,源文件中对“func”的引用,在目标文件里即对“__imp__func” 的引用。如果试图使用静态LIBC.LIB 或LIBCMT.LIB进行连接,将在__imp__func上发生LNK2001;如果不使用/MD选项编译,在使用MSVCxx.LIB连接时也会发生LNK2001。
4.使用/ML选项编译时,如用LIBCMT.LIB链接会在_errno上发生LNK2001。

5.当编译调试版的应用程序时,如果采用发行版模态库进行连接也会产生LNK2001;同样,使用调试版模态库连接发行版应用程序时也会产生相同的问题。
6.不同版本的库和编译器的混合使用也能产生问题,因为新版的库里可能包含早先的版本没有的符号和说明。
7.在不同的模块使用内联和非内联的编译选项能够导致LNK2001。如果创建C++库时打开了函数内联(/Ob1或/Ob2),但是在描述该函数的相应头文件里却关闭了函 数内联(没有inline关键字),这时将得到该错误信息。为避免该问题的发生,应该在相应的头文件中用inline关键字标志内联函数。
8.不正确的/SUBSYSTEM或/ENTRY设置也能导致LNK2001。

其实,产生LNK2001的原因还有很多,以上的原因只是一部分而已,对初 学者来说这些就够理解一阵子了。但是,分析错误原因的目的是为了避免错误的发生LNK2001错误虽然比较困难,但是只要注意到了上述问题,还是能 够避免和予以解决的。

8. VS2008 编译MFC应用程序出错

观察下路径对不对。有时候头文件和库没包含就会有些莫名其妙的错。mfc库跟普通的win32库毕竟不是一起的。

9. vs2010新建立的mfc工程编译就出错error C2065: “DWORD_PTR”: 未声明的标识符

那个是我用VS2008建的工程,所以没有。但根据你的描述,的确是VS2010出错了,感觉2010不是很好用。
要不你去微软官网下一个,不要下那些破解版的。然后输入个序列号破解试试。

10. VS2010无法编译MFC工程怎么办

==========
生成:
成功
0
个,失败
0
个,最新
1
个,跳过
0

==========
这种提示说明,
编译器
检测到代码没有发生变化,得到的仍旧是上一次编译的结果。
你重新编译一下解决方法,就是整个重新编译一下,最好先清理一下再重新编译。

热点内容
ef数据库查询数据 发布:2025-05-18 03:29:36 浏览:668
百度云下载文件夹 发布:2025-05-18 03:17:33 浏览:674
php云开发 发布:2025-05-18 03:12:41 浏览:447
sql语句显示表 发布:2025-05-18 03:12:30 浏览:690
数据库系统的例子 发布:2025-05-18 03:02:42 浏览:191
数字化储存与编译是什么 发布:2025-05-18 02:56:55 浏览:217
个人网站模板源码 发布:2025-05-18 02:51:17 浏览:490
主服务器ip地址 发布:2025-05-18 02:46:29 浏览:856
电脑配置太低玩不了绝地求生怎么办 发布:2025-05-18 02:38:39 浏览:797
存储过程怎么出错了 发布:2025-05-18 02:37:16 浏览:368