关于在c++创建类的问题

问题描述

关于在c++创建类的问题

类的声明和实现应该分开写还是合在一起写?
比如说我把类的声明写在头文件上,把类的实现放在另外一个cpp文件上,到时候我在主程序调用这个类时,它会自动找到类的实现吗?

解决方案

当然可以找到。这个找的过程是连接器完成的。你有函数的原型,编译器就会产生一个符号。

解决方案二:

分开写好一点。
编译的时候,分别编译每个cpp文件成为.o文件,
最后链接每个.o文件,生成一个可执行的二进制文件
这个二进制文件已经包含了需要接口的实现的二进制。所以不存在找到找不到。

另,还有一个叫动态库的东东,在链接的时候不会放到可执行文件中去,那要怎么办呢?
就要让这个可执行文件去找了!即在执行文件之前,要设置动态库的查找路径。
比如在linux下就是配置LD_LIBRARY_PATH,通过这个路径找到其实现。

解决方案三:

要在cpp文件中include头文件

解决方案四:

会,但你用vc++的话记得添加工程,还要放到同一文件夹下

解决方案五:

会的,Cpp文件里会把它的头文件include进来的。

解决方案六:

会的。只要你在.cpp文件加上你写的头文件就可以

解决方案七:

同样文件名的.h和.cpp文件并没有必然联系。我们一般将声明放在头文件,实现放在cpp文件。
cpp文件包含了声明所在的头文件,编译器是可以认识到函数声明对应的符号的。

解决方案八:

会的一楼说得对,cpp里要include头文件,另外cpp里的实现可以帮助你开发lib的时候把重要算法加密,你只要给别人lib和头文件就可以了。

解决方案九:

会的,.h 和 .cpp 就是一个声明,一个实现,但是不要忘了要将.h文件 include进来

解决方案十:

在头文件里面写上类的声明,cpp文件里面写定义,编译器会自动链接,包括头文件就可以直接调用

时间: 2024-11-01 07:40:29

关于在c++创建类的问题的相关文章

用.net动态创建类的实例

用.net动态创建类的实例 看了网上很多关于DotNet动态创建类的实例的文章,我这里想总结一下,其实方法很简单,就是用"Activator.CreateInstance".但是这个方法需要待创建的类的Type作为参数,为了获得该参数,可以利用[Assembly].GetType方法,这个方法只需要待创建的类的名称(名称字符串)就可以了,最后的问题就是要获得这个类所在的程序集.如何获得待创建的类所在程序集,那么就解决了这个问题. 其实,在获得程序集这个问题上,可以有更简单的办法,以下是

经典教程:用.net动态创建类的实例

看了网上很多关于DotNet动态创建类的实例的文章,我这里想总结一下,其实方法很简单,就是用"Activator.CreateInstance".但是这个方法需要待创建的类的Type作为参数,为了获得该参数,可以利用[Assembly].GetType方法,这个方法只需要待创建的类的名称(名称字符串)就可以了,最后的问题就是要获得这个类所在的程序集.如何获得待创建的类所在程序集,那么就解决了这个问题. 大家可以参考http://www.cnblogs.com/ShadowK/archi

应用技巧:用.net动态创建类的实例

创建|动态|技巧 看了网上很多关于DotNet动态创建类的实例的文章,我这里想总结一下,其实方法很简单,就是用"Activator.CreateInstance".但是这个方法需要待创建的类的Type作为参数,为了获得该参数,可以利用[Assembly].GetType方法,这个方法只需要待创建的类的名称(名称字符串)就可以了,最后的问题就是要获得这个类所在的程序集.如何获得待创建的类所在程序集,那么就解决了这个问题. 大家可以参考http://www.cnblogs.com/Shad

看实例学VFP:编程方式创建类

上两个例子中介绍了使用"类设计器"来交互方式创建类,与交互方式相对应的,也可以用编程方式创建类.不过用这种方式来创建类很麻烦,并且需要极大的耐心去调试,相对来说用得比较少. 算是扩充一下知识面吧,本文对编程方式定义类的语句格式做一个简单的介绍,但是不必深究和浪费太多的时间,毕竟已经有可视化的.强大的"类设计器"可以用了:否则VFP这三个字母中,打头的这个V(Visual)也就失去其意义了.本文末尾给出了编程方式创建类的一个简单示例代码,运行时界面如下图: 运行时单击

看实例学VFP:使用类设计器创建类

VFP中系统定义的类称为基类,用户不能对其修改,但可以根据基类直接创建对象进而实现类的实例化,比如我们常用的"表单控件工具栏"上的类都是系统基类.VFP的基类分容器类(Container)和控件类(Control)两种.简单地说,容器类就是可以包含其他对象的类,比如表单.容器等:而控件类就是不能再容纳其他对象的类,比如文本框.命令按钮等. VFP的容器类包括:表单集(FormSet).表单(Form).容器(Container).页框(PageFrame).页面(Page).表格(Gr

python中的窗口创建类

在前面已经学习怎么样把注册窗口的功能封装成类的形式,接着下来就是创建窗口的功能,而这部分功能又是怎么样编写才是最合适的呢,以便后面所有开发工作都可以复用这些代码.我们来仔细地分析一下窗口上主要有什么东西是可变的,什么东西不变的,原则上就是把可变的东西变成通过函数方式来改变,不变的东西放在类内部,这样减少类的使用者在细节上考虑的问题.目前来看,一个窗口最容易变化的就两样东西:窗口类型,指明这个窗口是属于那一个种类的,比如Edit.List等:另外一个就是窗口的标题,因为软件的使用者只能从窗口的标题

JavaScript创建类/对象的几种方式概述及实例_javascript技巧

在JS中,创建对象(Create Object)并不完全是我们时常说的创建类对象,JS中的对象强调的是一种复合类型,JS中创建对象及对对象的访问是极其灵活的. JS对象是一种复合类型,它允许你通过变量名存储和访问,换一种思路,对象是一个无序的属性集合,集合中的每一项都由名称和值组成(听起来是不是很像我们常听说的HASH表.字典.健/值对?),而其中的值类型可能是内置类型(如number,string),也可能是对象. 一.由一对大括号括起来 复制代码 代码如下: var emptyObj = {

wcf使用单利模式创建类发生异常

问题描述 wcf使用单利模式创建类发生异常 我在wcf服务中.自定义一个类目的是连接数据库,这个类是通过单利模式创建的.但是在客户端调用的时候,这个类竟然无法创建对象.请wcf高手看看. public class TestSer : ITestSer { ... public LoginParam GetLoginObj() { LoginParam loginobj = null; MySQLHelper sqlhelper = MySQLHelper.CreatInstance();//自定

报错提示找不大符号-android studio开发为什么我创建类,也导入这个类的包了,可报错提示找不到符号

问题描述 android studio开发为什么我创建类,也导入这个类的包了,可报错提示找不到符号 5C android studio开发为什么我创建类,也导入这个类的包了,可报错提示找不到符号希望哪位遇到类似的问题帮我解答一下 解决方案 eclipse导入android报错找不到类 解决方案二: ,这个,不太好做啊,你可以 解决方案三: 没有引用依赖吧,检查下build.gradle文件里面的dependencies 解决方案四: 你得贴完整的 我看是包名错了