C++ 将函数保存在类C++;
我是个彻头彻尾的傻瓜 我已经为int-to-string和string-to-int转换创建了函数 我想保存它们,这样我就可以在任何程序中使用它们,这样我就可以像调用C++ 将函数保存在类C++;,c++,c,class,function,iostream,C++,C,Class,Function,Iostream,我是个彻头彻尾的傻瓜 我已经为int-to-string和string-to-int转换创建了函数 我想保存它们,这样我就可以在任何程序中使用它们,这样我就可以像调用#include 我是否通过创建一个类(这样就没有私有成员变量)来实现这一点 如果我把它作为一个类来做,我如何在不创建对象的情况下使用函数呢 基本上,我想创建我自己的cmath或string之类的东西,但我甚至不知道如何调用它。如果你只有简单的函数,你可以将它们放在命名空间中,命名空间也像一个容器,然后将它们放在一个单独的cpp文件
#include
我是否通过创建一个类(这样就没有私有成员变量)来实现这一点
如果我把它作为一个类来做,我如何在不创建对象的情况下使用函数呢
基本上,我想创建我自己的cmath或string之类的东西,但我甚至不知道如何调用它。如果你只有简单的函数,你可以将它们放在命名空间中,命名空间也像一个容器,然后将它们放在一个单独的cpp文件中,并创建一个包含原型的
.h
文件
i、 E代表mymath.h:
#ifndef MYMATH_H
#define MYMATH_H
namespace mymath
{
int dosomething(int y);
}
#endif
在mymath.cpp中:
#include "mymath.h"
int mymath::dosomething(int y)
{
}
然后,当您想要使用它时,您可以包括您的#include“mymath.h”
文件,并将cpp链接到您的项目。#include
#include <iostream>
class Tools {
public :
void static sneeze ();
};
void Tools::sneeze ()
{
std::cout << "atchoum";
}
int main () {
Tools::sneeze(); // atchoum
}
类工具{
公众:
无效静态喷嚏();
};
void工具::喷嚏()
{
std::coutmystring.hpp
你不需要C++中的所有类。你可以使用非成员函数(通常在命名空间内避免名字冲突)。同时注意C++标准库已经提供了你提到的功能。自由函数很好,但是命名空间包装器是个好主意。你忘了<代码>包括“MyMyth.h”。
在mymath.cpp中。另外,int-mymath::dosomething(int-y)
在定义中这似乎是正确的,现在我有了inttostring工作的问题,但是stringtoint用红色下划线(visual express 2010),错误是“表达式必须有一个指向类型函数的点”,通过更改int-stringtoint(string)修复了它在头文件中输入int stringtoint(字符串字),谢谢关于头文件的内容是什么?为什么不使用名称空间?名称空间的工作方式很像接口,你只需收集所有类似的主题函数,这样你就有了一个空间,可以在你的程序中放置工具。我希望那个对我的帖子评级较低的人解释他为什么这样做。不是我。但我认为,向下投票是因为你的示例不好。你呢不要使用头文件。你也可以使用class
而不是namespace
。工具箱是一个对象,对吗?工具箱可以在名称空间“garage”中。另外,我只是没有显式地将声明与每个文件分开,因为这是一个示例,所以声明更短,更容易阅读。OP的问题:我想保存它们,以便使用M在任何程序中。你的例子没有做到。而且,你的代码中没有任何命名空间或对象。我不明白你在说什么。你不要忘记这是C++。
#ifndef MYSTRING_HPP
#define MYSTRING_HPP
#include <string>
namespace n_mystring
{
std::string & IntToString( int Int );
int StringToInt( std::string & String );
}
#endif
#include "mystring.hpp"
std::string & n_mystring::IntToString( int Int ) {
//.... implementation
};
int n_mystring::StringToInt( std::string & String ) {
//.... implementation
};