问题标签 [local-class]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 在函数内部声明的相互 C++ 类
如何在函数内部定义类,以便它们“了解”彼此?这是我试图理解的一个非常愚蠢的版本。我想做类似的事情:
这不起作用,因为 A::bar() 还不知道关于 B 的任何事情。在函数之外,我可以将 A::bar() 的定义推迟到声明 B 之后。就像是:
但这似乎在函数内部不起作用。
代替一些使这一切工作的聪明的范围声明,我也欢迎一个明确的答案,说这在 C++ 中是不可能的(请参考)。
我知道还有其他方法可以解决这个问题(例如,在 foo 之外声明类),所以我不是在寻找关于如何做类似事情的答案......
c++ - 为什么不能将函数内部定义的结构用作 std::for_each 的函子?
以下代码将无法编译。编译器抱怨*没有匹配函数调用 for_each*。为什么会这样?
当我struct FlipFunctor
在 function 之前移动时flip_all
,代码会编译。
完整的错误信息:
没有匹配函数调用 'for_each(std::_Rb_tree_iterator<std::pair<Element* const, Element*> >, std::_Rb_tree_iterator<std::pair<Element* const, Element*> >, flip_all(std ::map<Element*, Element*, std::less<Element*>, std::allocator<std::pair<Element* const, Element*> > >)::FlipFunctor)'</p>
java - Java 本地类和接口
我想知道下一件事是否可以实施:
假设我有 2 个接口,而每个接口都有 1 个函数头。 例如,iterface1 具有函数 g(...),interface2 具有函数 f(...)
现在,我创建了一个类并声明该类正在实现这两个接口。在课堂上,我尝试做下一件事:
我开始实现函数 g(...),在它的实现中,我创建了一个实现 interface2 的本地类,并在这个类中添加了 f(...) 的实现。
c++ - 为什么本地类中的字段不能是静态的?
除了来自标准的参考之外,这背后是否有任何动机禁止static
内部类中的字段?
编辑:但是,static
允许成员函数。对于这种情况,我有一个用例。假设我只想foo()
为 POD 调用,那么我可以像这样实现它,
foo()
应该只通过 POD(如果static
允许)而不是其他数据类型。这只是我想到的一个用例。
c++ - 本地类、内部类和嵌套类在 C++ 中是一样的吗?
本地类、内部类和嵌套类在 C++ 中的含义相同吗?
java - 爪哇。本地课程有什么理由不让它成为最终的吗?
我有一个关于Java中的本地类的问题(在方法中声明的类或由 { } 限制的块中的类)。
有什么理由不将本地类声明为final吗?我们不能从本地类继承其他类(如果它没有在同一范围内定义),但是当我们将其声明为final时,也许编译器可以使代码更简单?
谢谢!
c++ - 为什么本地类中不允许使用静态数据成员?
为什么static const
成员不能存在于本地类中的原因是什么?这似乎是一个相当愚蠢的限制。
例子:
引用标准(9.8.4):
本地类不应具有静态数据成员。
c++ - 本地类:C++03 与 C++11
C++11中本地类的使用有什么变化吗?
在 C++03 中,本地类似乎不能用作模板参数(我记得)。
考虑这段代码,
但它给出了编译错误(C++03模式),说(ideone):
prog.cpp:4: 错误:没有匹配函数调用 'f(main()::S)'</p>
但是,在 C++11 模式( ideone )下编译时它编译得很好,这对我来说很有意义,否则 lambda 将无法工作。所以我猜想本地类的使用至少有这种变化。我对吗?本地课程还有哪些其他变化?
请引用标准中的相关文本(C++03 和 C++11 两者),以便读者自己比较,以备将来参考。
java - 为什么 Java 抱怨找不到我的本地类?
我正在尝试设置 Dozer 以在我的两个实体之间执行复杂的映射。本质上,我希望它percentCompleted
根据值是否为 1 (100%) 将我的 double 转换为布尔值。
为此,我创建了以下方法:
问题是.fields()
调用会抱怨,因为它说找不到isCompletedConverter
. 由于这是我第一次参加本地课程,我确信我做错了什么,但我无法弄清楚到底是什么。
c++ - 如何使用本地班级的好友功能?
由于可以在本地类中声明友元函数,如下例所示。如果在函数定义中定义了本地类的成员,而在它之外无法访问,那么它如何用于访问本地类的成员?