关于在VS2005中编写DLL遇到 C4251 警告的解决办法

今天我在弄一个DLL工程的时候,出现了C4251的警告,导致这个警告的原因是,在我的导出类里面有一个D3DXMATRIX的成员变量。
要解决问题是很容易的,只需要向前申明的时候将D3DXMATRIX导出来即可。具体解决步骤如下:

一般来说,DLL都会有这么一个用于导出的宏。

#ifdef DLL
#define EXPORT  __declspec(dllexport)
#else
#define EXPORT __declspec(dllimport)
#endif

我们可以将D3DXMATRIX的先前申明修改为:

struct EXPORT D3DXMATRIX;
这样,之前的警告便88了。

时间: 2024-09-20 00:15:55

关于在VS2005中编写DLL遇到 C4251 警告的解决办法的相关文章

Winxp中无法安装新字体的终极解决办法

Winxp中无法安装新字体的终极解决办法 在windows 7越来越火的今天,相信还有很多朋友对XP系统情有独钟吧?北极鱼也算是一个了,主要是由于自己都很少使用安装版软件,电脑上基本上都是一些绿色软件.并且自己制作很多绿色软件都是在xp系统下测试绿化的,结果就导致部分绿色软件在windows 7下无法使用,再加上在运行速度已经习惯问题上感觉还是XP来的顺手,所以一直还在延续着XP的使用,(双系统,平时使用在XP下,玩玩就用windows 7), 一直来用的XP好好的,不过早些天,北极鱼也算是终于

getview()-android getView中 position=0多次出现的解决办法

问题描述 android getView中 position=0多次出现的解决办法 适配器中的getview @Override public View getView(int position, View convertView, ViewGroup parent) { View view = View.inflate(context,R.layout.home_item,null); TextView tv = (TextView) view.findViewById(R.id.homeIt

iOS9与XCode7中不能使用http连接的快速解决办法_IOS

在Xcode7.0及以上版本中编译iOS APP时,默认会使用iOS9的一项新特性,使得所有http连接被禁用,项目里使用的API没有https支持,就悲剧了.差了官方文档,有这么一段话 App Transport Security App Transport Security (ATS) enforces best practices in the secure connections between an app and its back end. ATS prevents accident

有关easyui-layout中的收缩层无法显示标题的解决办法_jquery

easyui-layout中的收缩层无法显示标题的问题原因分析: 在easyui-layout中设置面板初始化为可以折叠,然后就发现标题还有图标都木有了 嗯,就是结果列表上面.一片空白,出现了问题就要去解决它,在网上查了资料之后呢,决定修改jquery.easyui.min.js 版本为:jQuery EasyUI 1.4.1 在5105行有_39d方法,在其中设置两个变量_Cstitle,_CsIcon添加代码如下: var _Cstitle; var _closedTitle = p.pan

排除vs2005中的不安全函数警告

下面的代码: #include <stdio.h> #include <minmax.h> int main( ) { int a,b,c; scanf("%d,%d",&a,&b); c=max(a,b); printf("max=%d",c); return 0; } 使用vs2005编译时会遇到这样一个warning: warning C4996: 'scanf' was declared deprecated 其实 w

使用asp.net MVC4中的Bundle遇到的问题及解决办法分享_实用技巧

背景    之前有过使用MVC3的经验,也建过MVC4的基本样例看过,知道有bundle这么一个方法.   近日想建个网站使用MVC4,但是我觉得在基本样例上改不好,有太多无用的东西,所以就建了一个空白的MVC的程序,然后自己写需要的东西,   将程序的目标框架从4.5降到了4.0(我使用的是VS2013),问题就来了. 问题及解决办法 1.降了目标框架之后,vs报一个警告:NuGet程序包是使用不同于当前目标框架的目标框架安装的,需要更新System.Web.Http,之前有用过NuGet,

Javamail中的常见中文乱码问题与解决办法(综合)

解决|问题|中文|中文乱码 在使用javamail api开发邮件服务系统时,我们常常会碰到很多中文乱码问题,下面就分别介绍如何解决这些问题. 1.发送名称含中文的附件到邮件服务器,用别的邮件接收程序接收到的附件名显示为乱码 解决办法:在调用MimeBodyPart的setFileName()时使用Base64编码.例如: BASE64Encoder enc = new BASE64Encoder();//该类位于jre/lib/rt.jar中 //fds为FileDataSource实例 mb

在ASP中常见的错误80004005信息和解决办法

作者:BatMan错误信息(错误信息我不用翻译成中文了吧,呵呵,大家谅解)Microsoft OLE DB Provider for ODBC Drivers error '80004005'[Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet databaseengine cannot open the file '(unknown)'. It is already opened exclusivelyby another

以前收集的一些资料---ASP中常见的错误80004005信息和解决办法

错误|解决 错误80004005信息处理方法(给小城写的,你好好找找把) 错误信息(错误信息我不用翻译成中文了把,呵呵,大家谅解)     Microsoft OLE DB Provider for ODBC Drivers error '80004005'     [Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database     engine cannot open the file '(unknown)'.