记录C++ Builder 6.0开发过程中的一个linker error

今天在开发的时候,本来好好的工程,突然报出这样的错误:

[Linker Error] Unresolved external ‘__fastcall TMainForm::OnPort1Message(Messages::TMessage&)‘ referenced from D:\NEW\A\SHANXIJUNQUA_DEMO\MAIN.OBJ

因为之前开发相关的程序的时候一直用的是微软的那一套的工具,这个也是最近才入手,所以不是很熟悉。于是就求助网络,最后在[[Linker Error] Unresolved external怎么解决]1 中看到这样的回复:

就是说你声明了该成员函数,但是却没有相应的定义,也就是实现

但是,我的过程里面明显是有这个函数的实现啊,那个函数我刚才还在修改呢!到工程的编译的文件下看了下,确实是没有相关的文件的obj文件,于是我就想着我再打开这个文件看看,重新编译下,这样不是就解决了这个问题了吗?

于是我就用C++ builder 6.0的好用的快捷键"CTRL+F12”,将所有的代码是是实现的模块调出来,输出那个函数所在的文件的名称进行搜索,神奇的事情出现了:竟然搜不到这个文件,现在明白了,是真的找不到这个文件啊,不出现这个错误才怪呢!

接下来的解决方法就简单了:在磁盘里找到缺失的文件,选择打开方式为:C++ Builder。打开后在C++ Builder里面:工程–>添加到工程(A)…,再编译,就没有上述的错误了。

PS:虽然问题解决了,但是不知道为什么莫名其妙我就把这个文件排除在了工程之外,可能是我的某一个误操作,或者是C++ Builder的bug吧?

时间: 2024-10-02 00:27:54

记录C++ Builder 6.0开发过程中的一个linker error的相关文章

记录开发过程中遇到的2个小bug

1.使用新建线程结合handler来更新UI线程中的 ListView,快速点击"刷新",会出现下面的错误:  The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI th

[转]Builder模式在Java中的应用

转自:http://www.cnblogs.com/moonz-wu/archive/2011/01/11/1932473.html 在设计模式中对Builder模式的定义是用于构建复杂对象的一种模式,所构建的对象往往需要多步初始化或赋值才能完成.那么,在实际的开发过程中,我们哪些地方适合用到Builder模式呢?其中使用Builder模式来替代多参数构造函数是一个比较好的实践法则. 我们常常会面临编写一个这样的实现类(假设类名叫DoDoContact),这个类拥有多个构造函数, DoDoCon

Builder模式在Java中的应用(转)

在设计模式中对Builder模式的定义是用于构建复杂对象的一种模式,所构建的对象往往需要多步初始化或赋值才能完成.那么,在实际的开发过程中,我们哪些地方适合用到Builder模式呢?其中使用Builder模式来替代多参数构造函数是一个比较好的实践法则. 我们常常会面临编写一个这样的实现类(假设类名叫DoDoContact),这个类拥有多个构造函数, DoDoContact(String name); DoDoContact(String name, int age); DoDoContact(S

ASP.NET开发过程中的事务处理

今天重新看了一遍<asp.net高级程序设计第四版>的第七章,关于asp.net的事务处理这一块,之前看的时候由于工作中也没有用到它所以没怎么在意,不过真是应了那句话:温故而知新呀. 今天的内容不是很多,代码演示也不多,所以可以早早写完休息. 事务:事务可以理解为一种必须同时完成或全部失败的操作.书中的经典例子:账户转账,A账户与B账户之前必须A-100同时B+100,这个操作必须同时成功,只要有个失败两个步骤都需要回滚,这样的一个完整过程就可以称为一个[事务]. 整个小节讲解事务处理可以归纳

一些关于angularJS的自己学习和开发过程中遇到的问题及解决办法

这篇文章也许会不定时更新,主要记录这段时间内自己遇到的angularjs学习开发的一些问题的解决办法.本文以摘抄为主,主要目的还是将自己遇到的困惑在各个地方查到的解决办法的汇总,给自己留个备忘吧. 1.新手在初次使用angularJS router的时候往往会忘记引用angular-route.min.js以及注入相关依赖,导致类似 Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.2.0rc1/$injecto

源始 web开发过程中遇到的一些兼容问题

前端培训课程马上结束,面临着出去找工作,在这里总结一下学习到的知识,也记录下自己找工作的情况和一些面试经验.希望能够坚持下去,使自己能有所提高... 先来总结下在前端开发过程中容易遇到的一些兼容问题. 1. 块属性标签float之后,如果有横向的margin属性,在IE6显示margin比设置的值大. 解决方案:给float的元素添加display:inline属性,使其转化为行内元素. 2. 设置较小高度的标签(一般小于10px),在IE6.IE7.遨游中高度超出自己设置的高度. 解决方案:给

对日软件开发过程中的质量管理(转)

对日软件开发过程中的质量管理 ----记系统开发事业本部大连开发部质量管理活动系列之一   NECSI系统开发事业本部主要承接日本客户委托开发的软件项目,承担从功能设计(FD).详细设计(DD)到编码.测试等不同开发阶段的作业.今后我们计划将更多地参与前期工程设计,积极推进海外作业人员的派遣. 公司一直把质量管理/按期交货放在最重要的位置,各开发部长期把在按期交货的前提下加强质量控制问题作为业务活动的重要内容,贯穿于软件开发的过程中. 质量管理活动背景 开发人员对委托方提供的设计资料的理解程度直

Builder模式在Java中的应用

在设计模式中对Builder模式的定义是用于构建复杂对象的一种模式,所构建的对象往往需要多步初始化或赋值才能完成.那么,在实际的开发过程中,我们哪些地方适合用到Builder模式呢?其中使用Builder模式来替代多参数构造函数是一个比较好的实践法则. 我们常常会面临编写一个这样的实现类(假设类名叫DoDoContact),这个类拥有多个构造函数, DoDoContact(String name); DoDoContact(String name, int age); DoDoContact(S

软件开发过程中的审查 (Review)

http://blog.csdn.net/horkychen/article/details/5035769 软件开发过程中的审查 (Review) 希望别人做些什么->定义出流程 希望别人做出正确的结果->定义出审查制度 软件开发项目中包括很多的审查动作,贯穿于整个开发过程.个人认为审查主要有以下目的: 1.尽早排查出潜在的问题(Potential Risk/Issue) 经过其他人的参与,以不同的视角提出不同的看法,会有类似头脑风暴的效果,集思广议来查找工程师未能注意的问题. 2.保持良好