问题标签 [default-arguments]
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++ - 具有默认参数的成员初始化列表
是否可以将默认参数与成员初始化列表一起使用?
构造函数始终将 x、y 和 z 设置为 0,即使您通过设置参数调用它也是如此。
c - 接受默认参数的 C 函数
我试图编写一个具有可选参数的 C 函数,如果该参数没有“使用”,那么它有一个默认值。
有没有办法解决这个问题?
c++ - VS2010模板化类函数中的可选参数
我在 MSVS 2010 中有一个奇怪的问题。我有一个类,它的函数是模板化的,并且包含一个具有默认值的参数。
在我的头文件中:
好的,现在我的主要内容是这样的:
我明白为什么不高兴,因为我没有在课堂上为“myF()”定义函数原型,但它不应该更清楚吗?我认为默认值的重点是在调用中使参数可选。即使预编译器不满意并将其标记为问题,代码也可以正常编译和运行。
有什么想法吗??谢谢!
c++ - 调用类成员以获取同一类的另一个成员函数的默认参数
我试图实现调用一个类成员来获取同一类的另一个成员函数的默认参数。这是我正在做的事情:
如果没有提供任何内容,即称为obj.getPlanarGraph()
whereobj
是对应类型的,那么我想获取graph
. 我知道我可以为此编写一个简单的包装器,如下所示(见结尾),但我更感兴趣的是为什么不允许这样做。对于上面的声明编译错误是:cannot call member function ‘virtual std::vector<int> baseGraph::getLabels() const’ without object
.
当我提供this
参数时,错误是‘this’ may not be used in this context
.
我想到的解决方法是:
python - lambda *args,**kwargs:无
考虑:
这样做的动机是我不必输入逻辑来检查是否已分配回调,因为它默认为blank_fn,它什么都不做。
这行得通,但是有什么理由我不应该这样做吗?它是pythonic吗?有更好的方法吗?是否有内置的:
python - Python中的默认参数
我对 Python 中的默认参数感到困惑。这是我的代码:
我只是更改 b 实例。为什么所有实例都更改了?
python - 将默认参数传递给 Python 中的函数
这里是新手,所以请温柔。我正在使用网格,并且我有一组不可变列表(元组),其中包含原始输入网格的属性。这些列表以及原始网格被用作组织指南,以密切关注新创建的子网格;即由于子网格引用原始网格,其属性(列表)可用于在子网格之间引用,或创建子网格的子网格。下面列出了其中一些列表的结构:
由于我不熟悉 oop,因此我将脚本组织如下:
问题是,在 KMeans 中的每个函数上,我都必须将网格的一些属性作为参数传递,而且我不能默认它们,因为它们在脚本开头是未知的。例如,在 Kmeans 中有一个名为 CreateSeeds 的函数:
最后三个参数是静态的,但我不能这样做:
因为我必须放在faceCount, vertices, faceVertexIndexes
函数定义中,而这些列表在一开始就很大而且未知。
我尝试过使用类,但在我对它们的了解有限的情况下,我遇到了同样的问题。有人可以给我一些关于在哪里查找解决方案的指示吗?
谢谢!
c++ - 默认参数与重载 wrt。名称查询?
在 C++ 中,给定替代方案:
想要使用此功能的用户代码是否有任何差异,也就是说,给定任何代码库,当我将第一个定义更改为第二个定义时,哪些代码构造会中断(在编译时或运行时)?(重载解决方案?名称查找?分配fun
给函数指针?模板中的用法(std::function
)?...)
或者这些在语义上是否相同?(这里有一些我知道的细节,与这个问题无关)
c++ - 模板方法和默认模板参数
我的问题可以通过以下代码恢复:
gnu 编译器,版本 4.8.1 失败并显示以下消息:
它引用方法 C2::m 的默认模板参数 C2。
显然(我认为),编译器将C2<T>
其视为默认参数而不是C2
(没有<T>
)。因此,当它找到指令时,它会失败,因为类型C2<T>
与Container
.
然而,clang++,只是对于完全相同的代码,编译得很好!
我的问题:
- 哪个编译器有真相?
- 是否有其他方法可以与当前版本的 gnu 编译器表达相同的含义?
提前致谢
莱安德罗
c++ - 跳过 C++ 函数中的一些参数?
我有一个 C++ 函数,它有 5 个参数,所有参数都有默认值。如果我传入前三个参数,程序将为最后两个参数分配一个默认值。有没有办法传递 3 个参数,并在中间跳过一个,给出第一个、第二个和第五个参数的值?