编译
文章平均质量分 59
red-fly
什么是人?终究也是尘归尘,土归土罢了。下雨的时候在路上涉水而行,有太阳的时候在水泥地板上疾驰而过,不管是喧闹,是平静,还是挣扎和惬意,等到结束的时候,一切都烟消云散... 留下的,只不过是无数只细菌的美餐而已 ...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用ZXing库时,提示“error C2589: ‘(‘: illegal token on right side of ‘::‘“以及其它编译错误
本文记录了使用ZXing库编译时遇到的多个错误及解决方案。首先出现的min/max相关错误通过添加NOMINMAX预定义解决,随后出现的string_view等错误是由于C++标准版本过低。最终通过将项目属性中的"C++ Language Standard"从默认的C++14修改为C++17或C++20标准解决了所有编译问题。文章详细展示了错误信息、分析过程及具体修改步骤,为使用ZXing库的开发者提供了解决类似问题的参考方案。原创 2025-09-12 11:30:50 · 698 阅读 · 0 评论 -
c#定义占用固定字节长度的结构体字段
另外注意到,在字段的前面采用了 unsafe 关键字,如果去掉,会提示必需添加它,加上了它之后,又提示必需采用/unsafe的编译方式。这个固定长度的占用,必需采用简单的数据类型:char、byte、int、short等。定义这个结构体,占用了136个字节的内存空间,关键的是,它的内存块是连续的,其中c占用了128个字节。本文简单介绍了关于c#中定义固定长度字段的方法,但它属于unsafe类型,所以并不推荐这样做。然后重新加载工程,有关unsafe的提示就会消失,而且也可以正常编译和运行了。原创 2025-05-16 09:19:55 · 472 阅读 · 0 评论 -
vs2022修改编译器为vs2010后如何恢复
在vs2022中,编译opencv3.4.0时,总是提示 "'binary_function': is not a member of 'std'",在工程的属性中,没有了任何可以修改的项,所以无法从属性窗口上把它改回来,有点麻烦。这个标签,发现vs2022的都是 v143,而vs2010的都是v100,所以直接把v100改为v143后保存,然后工程重新自动加载,状态恢复。用记事本打开工程文件 .vcxproj,然后搜索。注意,可能会有几个这个标签,都要修改,不要漏了。原创 2025-04-17 09:38:57 · 382 阅读 · 0 评论 -
C#连接sql server
我把Platform target改为x64再编译运行,问题解决,连接成功。原因是odbc的驱动和应用程序的架构不一致。原创 2025-02-25 18:41:31 · 500 阅读 · 0 评论 -
Microsoft SDKs 有文件重定义导致编译失败的处理
发现默认编译的是64位,是没有问题的,编译成功,然后切换到32位再编译,就出现了一样的错误,这说明提倡大家用64位的程序,但我现有的项目依赖了其它很多的库文件,没法切换到64位,所以还是要找到解决办法才行。去电脑上查看这两个目录,发现里面都有很多文件,除了这两个目录之外,也有其它的目录,但里面都是只有几个文件,显然不会构成威胁。这个里面,第一行就是目标路径,选中它,点上面的“x”号删除掉,然后确定保存。然后再编译,重复定义消失,编译顺利通过,至此问题解决。根据网上的一些说法,好像也不靠谱,但是给了点提示。原创 2023-11-09 16:04:23 · 621 阅读 · 0 评论 -
windows下编译opencv 3.4.0
为了方便后期的调试,自己动手编译opencv3.4.0,这样有需要的时候还可以自己修改修改源代码。通常来说,编译32位比较简单,直接用cmake生成编译的工程就行了,但64位就比较麻烦了(实际不是麻烦,是没有找到问题的解决办法而已)今天完成了64位的编译,所以简单记录下整个编译流程。先下载源代码,我的目录如下:下载下来后一个sources目录和3个txt文件 ,第一个build不记得了,应该是后来自己放进去的。这个目录在我的电脑里是比较深的,为了方便,可以放的浅一些,但不能是第一级目录,原创 2022-04-04 17:34:25 · 4526 阅读 · 4 评论 -
vs2015在 release下断点不生效的设置
一个小程序由于缺少第三方的debug库文件,所以无法编译debug的程序,只好编译release版,调试当然也是在release版本下。环境:vs2015 mfc,win7 64位程序:对话框程序,64位问题:在删除一个指针时发生崩溃。可以看到堆栈信息,也能看到是哪个函数,看对应的指针,有值,但显示里面的内容非法,于是就想看看这个指针在生成时的样子。在生成这个指针的位置加断点,在删...原创 2019-04-12 15:11:54 · 3192 阅读 · 0 评论 -
vs2015在按F5调试时,总是提示项目已经过期的解决方案
参考:https://stackoverflow.com/questions/2762930/visual-studio-2010-always-thinks-project-is-out-of-date-but-nothing-has-changed另外 vs2010 如果出现此问题,也可以参考中文说明(我没有在vs2010上试过,但是在vs2015上此方法无效):https://b...原创 2019-02-13 11:10:36 · 10269 阅读 · 0 评论 -
OpenCV的源代码编译
上周开始转了项目组,涉及到OpenCV这东西,以前光听说但没有实际用过,也不清楚它究竟是做什么的。如今开始要用它了,其实它能做啥,如何做,还真不太清楚,只是有听说人工智能的应用,好高大上啊,所以赶紧开始研究它其他工程师已经写了个图片标注工具,但确实不太好用,所以我想把它改变一下,原以为用他们的代码直接修改,一问才知道用了OpenCV,还说三行代码就可以了,wk,这么简单啊,再问得多原创 2017-11-13 17:52:31 · 3573 阅读 · 0 评论 -
vs2010编译时出现错误提示:error C2470: “xx”: 看起来像函数定义,但没有参数列表;跳过明显的函数体
一个vs2010的项目中包含了多个dll工程,最近由于修改,对其中的两个dll工程A、B都拷贝了一份分别命名为C、D,然后修改原始工程中的文件名和类名,以便和原来的名称相区分,防止一不小心弄错了就麻烦了原始的是B调用A,新的当然也就是D调用C了,修改完后,C编译正常,编译D的时候出现了错误提示,如下:1>e:\dll\bcom\bcom.h(32): error C2470: “CComM原创 2016-03-02 11:03:08 · 10667 阅读 · 2 评论 -
vs2008向导生成的CLR工程编译无法通过的解决方法
vs2008向导生成的CLR工程编译无法通过的解决方法在vs2008中,使用VC++生成CLR工程之后,在窗体上随便添加一个控件(可显示的,比如文本框、静态框等),然后不做任何修改直接编译,但是编译不过。在我的工程中,添加了两个控件,一个button,一个checkbox,InitializeComponent()中的相关代码如下:void Initialize原创 2009-05-08 10:04:00 · 2989 阅读 · 0 评论 -
vs2008中编译动态库时生成lib的设置
在vs2008中编译动态库时,有时候不会生成对应的lib文件(我是由原来的一个工程,别人写的,生成静态库,我现在改成了动态库,但一直不会生成lib文件)找了好半天才找到了解决方法 首先在工程中像vc6一样生成def文件,然后只需要在工程设置中加载这个文件就行了:Project -> Properties -> Configuration Properties -> Linker -原创 2009-04-20 09:22:00 · 3369 阅读 · 1 评论 -
关于编译器和windows的几个主要预定义值
编译器和windows操作系统的几个主要预定义值对程序的编译会有影响,以下为基本的列表 (关于详细的c++编译预定义,请在msdn中搜索“Predefined Macros”以获取更准备更全面的描述) 一、c++预定义__cplusplus一般是在c库的头文件中使用,方法如下:#ifdef __cplusplusextern "C" {#endif ..原创 2009-03-31 16:02:00 · 2870 阅读 · 0 评论 -
vc6支持UNICODE的问题解决
vc6.0的UNICODE问题解决前两天要用到vc6.0的unicode编译选项,发现编译不过,就去网上搜索,最后是查到了 vc6.0支持unicode,但在缺省情况下的安装,没有把相关的部件安装上去,所以第一步要安装相关的组件。从安装向导中选择自定义,在选择要安装的组件清单时,把vc里面带unicode的子项全部选中安装即可在vc6.0的IDE中,如果没有unicode的编译条目原创 2008-08-23 10:52:00 · 2998 阅读 · 0 评论
分享