C++:如何从我自己的函数中的头文件调用一个函数(比如说 funA()),这个函数的名称也是 funA()?
C++: How to call a function (lets say funA()) from a header file inside my own function whose name is also funA()?
我想在我的函数中调用 <algorithm>
头文件中的函数 reverse(BidirectionalIterator first, BidirectionalIterator last)
,其名称也是 reverse(int)
.
代码:
#include<iostream>
#include<algorithm>
using namespace std;
class Solution{
public:
int reverse(int x){
string num = to_string(x);
reverse(num.begin(), num.end());
}
};
我以为它会像函数重载一样,根据传入的参数自动调用合适的函数。但是,事实并非如此。
我试过:
namespace algo{
#include<algorithm>
}
但是它给出了很多错误。
啊,现在您正在体验 Whosebug 上的人们 always yelling about not using using namespace std;
的原因。问题是您将整个命名空间带入全局命名空间,这将导致这样的冲突。
但是,如果删除该行,现在所有导入的函数都保留在 std
命名空间中,因此您可以:
#include<iostream>
#include<algorithm>
// BAD
// using namespace std;
class Solution{
public:
int reverse(int x){
std::string num = std::to_string(x);
std::reverse(num.begin(), num.end());
return std::stoi(num); // Don't forget to return!
}
};
我想在我的函数中调用 <algorithm>
头文件中的函数 reverse(BidirectionalIterator first, BidirectionalIterator last)
,其名称也是 reverse(int)
.
代码:
#include<iostream>
#include<algorithm>
using namespace std;
class Solution{
public:
int reverse(int x){
string num = to_string(x);
reverse(num.begin(), num.end());
}
};
我以为它会像函数重载一样,根据传入的参数自动调用合适的函数。但是,事实并非如此。
我试过:
namespace algo{
#include<algorithm>
}
但是它给出了很多错误。
啊,现在您正在体验 Whosebug 上的人们 always yelling about not using using namespace std;
的原因。问题是您将整个命名空间带入全局命名空间,这将导致这样的冲突。
但是,如果删除该行,现在所有导入的函数都保留在 std
命名空间中,因此您可以:
#include<iostream>
#include<algorithm>
// BAD
// using namespace std;
class Solution{
public:
int reverse(int x){
std::string num = std::to_string(x);
std::reverse(num.begin(), num.end());
return std::stoi(num); // Don't forget to return!
}
};