函数定义中是否有合法的C++函数声明?函数定义中的函数声明
0
A
回答
4
作为即时块范围中的声明和作为本地类的成员函数的函数定义是合法的。
void f() {
// this declares the function defined below (enclosing namespace)
void g();
g();
}
void g() {
struct {
void help() { ... }
} h;
h.help();
}
3
是的。虽然这个问题很容易回答。你可能只是尝试过,看过。事实上,你可以这样做的事实是一个有趣的C++错误的来源之一:
class A {
public:
operator int() const { return 0; }
};
void joe()
{
// Initializing an int?
int fred(A());
}
1
是的,这是合法的。
参照C++规范,一个函数定义(8.4)的所述主体包含化合物语句,这反过来(6.3)包含一个或多个语句,其中之一可以是声明 - 陈述。
相关问题
- 1. 函数定义声明函数吗?
- 2. 函数声明/函数定义
- 3. 函数声明和定义
- 4. 函数定义不声明参数
- 5. 函数声明的含义
- 6. 构造函数nulltpr_t:函数定义不声明参数
- 7. 声明和定义类成员函数内的函数对象
- 8. 在函数声明之前定义了javascript函数的Typeof?
- 9. 声明函数返回取消定义
- 10. 函数声明与定义Ç
- 11. 函数声明为static但从定义
- 12. 函数声明
- 13. 声明函数
- 14. 声明函数
- 15. 函数的声明
- 16. z3中的函数声明
- 17. Scala中的函数声明
- 18. core.c中的函数声明
- 19. C++中的函数声明
- 20. JS函数声明:在参数声明
- 21. 函数内声明函数的范围
- 22. 预期的函数体函数声明
- 23. PLSQL函数声明
- 24. C++函数声明
- 25. jQuery函数声明
- 26. GetClipboardSequenceNumber()函数声明
- 27. 声明session_start()函数?
- 28. Lua函数声明
- 29. (Z3Py)声明函数
- 30. jquery匿名函数声明的含义
是的,他可以,但也许他想知道,这不只是他的编译器,它允许它...... :) – villintehaspam 2011-01-21 10:51:33