来自ADA,我在C++中确实有一件事,那就是能够使用嵌套或本地函数.在ADA中,我可以这样做:
procedure TotalSum ()
is
function Sum (a : Float; b : Float) return Float;
is
begin
return a + b;
end Sum;
x : Float := 1.0;
y : Float := 1.0;
z : Float := 1.0;
sum : Float;
begin
sum := Sum(x,y);
sum := Sum(sum,z);
end TotalSum;
Run Code Online (Sandbox Code Playgroud)
这样做的好处是我可以限制仅在本地使用的函数的范围.对于类,我习惯了这样一个事实:我可以声明一个私有函数,以限制范围(这限制了范围).但是现在我在命名空间而不是类中实现了一个函数库,我无法找到一个很好的解决方案来限制我的本地函数的范围.
是否有最佳实践可以在C++命名空间中完成上述操作.