gpt4 book ai didi

c++ - 我们如何在函数声明中使用函数参数?

转载 作者:太空宇宙 更新时间:2023-11-03 10:27:39 25 4
gpt4 key购买 nike

标准N4296::3.3.4/1 [basic.scope.proto]:

In a function declaration, or in any function declarator except the declarator of a function definition (8.4), names of parameters (if supplied) have function prototype scope, which terminates at the end of the nearest enclosing function declarator.

我尝试了以下示例:

1.

template<const int a>
class A{ };

const int a = 4;

A<a> b; // OK

void foo(const int a = 4, A<a>); //non-type template argument is
//not a constant expression

DEMO

2.

void foo(const int a = 4, int b = a); //default argument references parameter 'a'

DEMO

我们如何使用这个示波器的功能?它是为了什么而引入的?

最佳答案

这是一个人为的例子:

void foo(overly::long_type::which_should_be_a_typedef_anyway a, decltype(a) b); // fine

decltype(a) c; // oops, a not declared

关于c++ - 我们如何在函数声明中使用函数参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28060247/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com