C ++项目 - 在哪里包含sql类文件?

时间:2013-12-18 09:33:05

标签: c++ class include

我是C ++的新手,但他们刚刚继承了一组20多个C ++解决方案,这些解决方案可以共同创建一个应用程序套件。我有一个以单个.cpp文件保存的类,可以用来连接和与SQL数据库通信,我想让所有的解决方案都能使用这个类。

我已将sql.cpp文件放在已存在的名为“Shared”的目录中。但是在每个项目中我都包含该文件?我已经尝试将其包含在stdafx文件中,但这会导致无休止的编译错误。我已经尝试将它包含在项目中使用它的每个.cpp文件中,但是只要我将它包含在多个中,我就会“在obj中定义”错误。我也尝试创建一个单独的.h文件来实例化该类并包含它,但它似乎找不到.cpp文件,因为我得到了未解决的外部错误。

我希望我已经解释得那么好 - 有人可以对这个问题有所了解吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您不包含cpp文件。

首先,获取函数原型并创建头文件

如果您的Sql.cpp代码是

bool Open(char* name)
{
 //do something
}
void Close(char* name)
{
 //do something else
}

你的Sql.h头应该是: (您只放置要从文件外部调用的函数)

#pragma once
bool Open(char* name);
void Close(char* name);

其次,我假设您最好创建一个库(静态库是最简单的,但更好的是依赖于您的操作系统的共享或DLL)并从所有需要它的项目链接到它。

如果它不依赖于其他任何东西,你可以使用目标文件和静态库。

修改 on Windows DLL:

On windows Static lib

how to build static library in linux

how to build shared library in linux