标签: default

C++类默认构造函数

早些时候我问为什么这被认为是坏的:

class Example
{
 public: 
  Example(void);
  ~Example(void);
  void f() {}
}

int main(void)
{
 Example ex(); // <<<<<< what is it called to call it like this?

 return(0);
}
Run Code Online (Sandbox Code Playgroud)

现在,我知道它正在创建一个函数原型而不是返回一个类型的示例.我仍然不明白为什么它可以在g ++和MS VC++中工作.

我的下一个问题是使用上述问题,这个电话会有效吗?

int main(void)
{
 Example *e = new Example();

 return(0);
}
Run Code Online (Sandbox Code Playgroud)

?有什么区别,只需调用Example e()??? 就像我知道它是一个函数原型,但似乎有些编译器会原谅并允许它调用默认的构造函数?我也试过这个:

class Example
{
 private:
  Example();

 public:
  ~Example();
};

int main(void)
{
 Example e1(); // this works
 Example *e1 = new Example(); // this doesn't

 return(0);
}
Run Code Online (Sandbox Code Playgroud)

所以我有点困惑:(对不起,如果这被问了一百万次.

c++ constructor default class

1
推荐指数
1
解决办法
3945
查看次数

默认的Windows语言?

是否有一些默认的Windows脚本语言预装在XP和Vista上(类似于OS X附带的Python和/或Linux附带的Perl)?

我知道批处理脚本,但我希望有一些更强大的东西.谢谢

注意 -我在Linux机器上,所以如果你们可以给你的Windows脚本语言2美分,我们将不胜感激,谢谢.

部分deux -即使ebgreen讨厌我,我也接受了他的回答,因为他给了我2美分.

windows default

1
推荐指数
2
解决办法
323
查看次数

Powershell中管道参数的默认值列表

我有一个Powershell脚本,可以读取管道中的值:

PARAM (
    [Parameter(ValueFromPipeline = $true)] 
    $s
)

PROCESS {
    echo "* $s"
}
Run Code Online (Sandbox Code Playgroud)

工作得很好:

PS> my.ps1 foo
*foo

我希望脚本具有默认值列表,因为最常见的用法将始终使用相同的值,并将它们存储在默认值中将是最方便的.我做了通常的任务:

PARAM (
    [Parameter(ValueFromPipeline = $true)] 
    $s = 'bar'
)

PROCESS {
    echo "* $s"
}
Run Code Online (Sandbox Code Playgroud)

再次,工作得很好:

PS> my.ps1
*bar
PS> my.ps1 foo
*foo

但是,当将默认值设置为列表时,我会得到一些完全合理但完全不符合我要求的内容:

PARAM (
    [Parameter(ValueFromPipeline = $true)] 
    $s = @('bar', 'bat', 'boy')
)

PROCESS {
    echo "* $s"
}
Run Code Online (Sandbox Code Playgroud)

结果:

PS> my.ps1
*棒蝙蝠男孩

我期望:

PS> my.ps1
*bar
*bat
*boy

如何为每个默认值调用Process循环?(这与在Process中调用一个,并将当前主体包装在一个大的foreach循环中超过$ s有所不同).

parameters powershell default

1
推荐指数
1
解决办法
6484
查看次数

模板函数中的默认参数(C++)

我正在尝试在模板函数中使用默认参数.以下是我正在尝试做的事情的最小例子:

sort.h中

template <typename T0, typename T1>
void sort(Vector<T0> &v0,Vector<T1> &v1=0)
{
    //sort v0, if (v1 != 0) sort it according to v0
}
Run Code Online (Sandbox Code Playgroud)

main.cpp中

#include "sort.h"
Vector<int> v0;
sort(v0);
Run Code Online (Sandbox Code Playgroud)

这不编译; 编译器给出错误"没有匹配函数来调用'sort'".

基本上这个函数应该对向量v0(任意数据类型)进行排序.另外,可以给出以与向量v0相同的方式排序的第二向量v1(任意)作为参数.当然,我可以简单地通过使用重载函数来解决这个问题,但由于我想将其他向量的列表扩展到5,我需要数百种不同的函数.

更新:感谢您的回复.我修改了我的问题描述,让你更好地了解我正在尝试做什么.

c++ parameters templates default

1
推荐指数
2
解决办法
393
查看次数

在MS Access 2007中为参数查询添加默认值

我有一个报告查询,询问用户两个参数.其中一个参数是日期.是否有可能有一个非答案(即用户按下" OK"按钮而没有输入日期)默认为Today()?如果是这样,怎么样?

parameters ms-access default ms-access-2007

1
推荐指数
1
解决办法
9144
查看次数

在C++函数中支持默认第一个参数的历史

正如这个问题重申的那样,可以为C++函数中的第一个参数提供默认参数.所以以下

void foo(int a, int b=5); // good 
void foo(int a=5, int b=5); // used to be an error
void foo(int a=5); // used to be an error
Run Code Online (Sandbox Code Playgroud)

但是,我记得在我的编程教育中很早就开始学习这是不允许的.这一点开始改变了吗?什么C++标准删除了这个限制?由于我在Visual Studio中完成了大部分早期编程,也许这甚至不是标准问题,而是特定的编译器限制,如果你这样做,你还记得哪些(大约)编译器版本有这个限制吗?

c++ parameters standards default function

1
推荐指数
1
解决办法
655
查看次数

在objective-c中,如果没有提供默认值,字段的默认值是多少?

在objective-c中,如果没有提供默认值,字段的默认值是多少?例如UIButton,NSArray,NSMutableSet,UIActivityIndi​​catorView,int,BOOL

实例变量默认值和局部变量默认值之间有什么不同?

iphone default object objective-c

1
推荐指数
1
解决办法
1652
查看次数

有没有办法选择是否为函数使用默认参数?

例如:

def tune(a=2,b=3,c=4):
    return str(a) + " " + str(b) + " " + str(c) 

print tune(5, *default*, 7)
Run Code Online (Sandbox Code Playgroud)

这样输出将是:

5 3 7
Run Code Online (Sandbox Code Playgroud)

我该怎么做*default*才能做到这一点?

python parameters default function python-2.7

1
推荐指数
1
解决办法
34
查看次数

用作函数参数时,将默认值设置为C数组

我有以下功能:

void getDefaultMaterial(Uint8 rgb[3]);
Run Code Online (Sandbox Code Playgroud)

问题是我希望rgb参数具有默认值.像那样:

void getDefaultMaterial(Uint8 rgb[3]={255, 255, 255});
Run Code Online (Sandbox Code Playgroud)

不幸的是,编译器不喜欢这个?还有另外一种方法吗?

c++ arrays default

1
推荐指数
1
解决办法
74
查看次数

Julia:具有Vector类型的可选参数的函数但默认为null?

我有一个功能f(x).我希望该函数具有vector类型的可选参数.例如,f(x; y::Vector=[1,2,3]).但是,我想将默认值设置为其他值(null?missing?void?),以便我可以轻松捕获它并对其作出反应.

在R中,我会说function(x, y=NULL){},然后if(is.null(y)){whatever}.

做朱利安最类似的做法是什么?

null arguments default function julia

1
推荐指数
1
解决办法
303
查看次数