可以将自定义函数存储在库中并在基本数据类型/ C ++上使用吗?

时间:2018-06-21 21:55:21

标签: c++ function libraries

如何创建我的库(或类似的库),以便可以保存/编辑并将其包含在文件中。它应该包含我创建的函数,主要是可以在变量上使用它们,例如:

我想创建一个函数:

appendString(string additionalText) - function in "library"

并具有一个变量:

string myString = "Hello " - variable in file (in which I "included" library)

然后,我写:

myString.appendString("World");

因此,myString的末尾应为“ Hello World”。

请注意:这些功能将根据基本数据类型而非对象来调用!

1 个答案:

答案 0 :(得分:0)

string是一个类类型,而不是“基本数据类型”,这可以从您正在对其上调用成员方法的事实中看出。基本类型没有方法。

您不能将新方法添加到现有的类类型,而必须从该类派生新的类。但是,诸如std::string之类的STL容器并非旨在派生(没有虚拟析构函数等)。

像这样 1 那样实现appendString()函数会更有意义:

void appendString(string &text, const string &additionalText)

然后这样称呼它:

appendString(myString, "World");

1:std::string已经有几种append()方法,例如:myString.append("World");

无论如何,要回答您的问题,您可以编写一对.h / .cpp文件,其中.h文件声明您的自定义函数和类型,而{{ 1}}文件实现了它们。

然后,您可以在需要的地方.cpp #include,也可以

  1. .h文件添加到每个项目。

  2. .cpp编译为静态.cpp文件(或等效文件,具体取决于编译器和目标平台),然后可以将其链接到每个项目的最终可执行文件中。