由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - C++ question
相关主题
急问:compile and build dependency一道c++的考古题
问一个 copy constructor 的问题 (C++)回答C++的弱问题
C++ 问题[合集] C++的弱问题
c++ initialize structfind bugs of c++ codes
如何 initialize array member?const object
C++ online Test 2题What does the default constructor do?
c++ questionC calls C++ library
C++ 中 myobject * a =new myobject[n] 的问题C++的一个小疑问,求解惑
相关话题的讨论汇总
话题: word话题: int话题: short话题: default话题: float
进入Programming版参与讨论
1 (共1页)
T*****J
发帖数: 193
1
为啥是5呢?谢谢
看不出Word(int, float= 3.14, short); 中的int有default value啊, 不好意
思, 呵呵
为啥只说第三个参数short没有default value呢?
class Word {
public:
Word();
Word(int, float = 3.14159, short);
};
int main()
{
Word* pw = new Word();
return 0;
}
Referring to the sample code above, which one of the following statements is
true?
1. The code compiles with no errors.
2. You are not allowed to provide a constructor with parameters without also
providing a default constructor.
3. You cannot dynamically create a c
t****t
发帖数: 6806
2
靠, 试试不就知道了!

【在 T*****J 的大作中提到】
: 为啥是5呢?谢谢
: 看不出Word(int, float= 3.14, short); 中的int有default value啊, 不好意
: 思, 呵呵
: 为啥只说第三个参数short没有default value呢?
: class Word {
: public:
: Word();
: Word(int, float = 3.14159, short);
: };
: int main()

t****u
发帖数: 8614
3
5

【在 T*****J 的大作中提到】
: 为啥是5呢?谢谢
: 看不出Word(int, float= 3.14, short); 中的int有default value啊, 不好意
: 思, 呵呵
: 为啥只说第三个参数short没有default value呢?
: class Word {
: public:
: Word();
: Word(int, float = 3.14159, short);
: };
: int main()

k****f
发帖数: 3794
4
...做作业么??

【在 T*****J 的大作中提到】
: 为啥是5呢?谢谢
: 看不出Word(int, float= 3.14, short); 中的int有default value啊, 不好意
: 思, 呵呵
: 为啥只说第三个参数short没有default value呢?
: class Word {
: public:
: Word();
: Word(int, float = 3.14159, short);
: };
: int main()

T*****J
发帖数: 193
5
为啥是5啊? 谢谢

【在 t****u 的大作中提到】
: 5
t****u
发帖数: 8614
6

因为1-4都是错的。
5,如果专指Word(int, float= 3.14, short); 那也是错的。因为如果parameter有
default value, 最后几个都要有。
但是如果泛指 Word(int, float, short),显然最后一个不用带default value。

【在 T*****J 的大作中提到】
: 为啥是5啊? 谢谢
T*****J
发帖数: 193
7
多谢指点!
可是我看不出Word(int, float= 3.14, short); 中的int有default value啊, 不好意
思, 呵呵
为啥只说第三个参数short没有default value呢?

【在 t****u 的大作中提到】
:
: 因为1-4都是错的。
: 5,如果专指Word(int, float= 3.14, short); 那也是错的。因为如果parameter有
: default value, 最后几个都要有。
: 但是如果泛指 Word(int, float, short),显然最后一个不用带default value。

t****u
发帖数: 8614
8
1,显然是错的,
第一 ctor Word() 没有body,不可能compile过的,
第二 Word(int, float=3.14, short), short 没有default value.
2, 错的,当然可以那么做。没有default ctor而有带parameter的ctor多了。
3,错的,当然可以用没有dtor()的class。
4,错的,你provide了ctor Word(),不过没有body(implementation)而已。
5,就是我的解释,如果专指这个题的话,那也是错的,因为第二个float有default
value,那么short也要有。如果泛指就是对的。

【在 t****u 的大作中提到】
:
: 因为1-4都是错的。
: 5,如果专指Word(int, float= 3.14, short); 那也是错的。因为如果parameter有
: default value, 最后几个都要有。
: 但是如果泛指 Word(int, float, short),显然最后一个不用带default value。

t****t
发帖数: 6806
9
没有body也可以compile过的...甚至可以link过, as long as you don't call it.
sometimes we delibrately omit the body (implementation) to make sure no one
calls it

【在 t****u 的大作中提到】
: 1,显然是错的,
: 第一 ctor Word() 没有body,不可能compile过的,
: 第二 Word(int, float=3.14, short), short 没有default value.
: 2, 错的,当然可以那么做。没有default ctor而有带parameter的ctor多了。
: 3,错的,当然可以用没有dtor()的class。
: 4,错的,你provide了ctor Word(),不过没有body(implementation)而已。
: 5,就是我的解释,如果专指这个题的话,那也是错的,因为第二个float有default
: value,那么short也要有。如果泛指就是对的。

t****u
发帖数: 8614
10
您老说得对。
我老说得不精确,应该加上,
因为下面有,
Word* pw = new Word();
所以不能compile(严格说来应该是link)过。

one

【在 t****t 的大作中提到】
: 没有body也可以compile过的...甚至可以link过, as long as you don't call it.
: sometimes we delibrately omit the body (implementation) to make sure no one
: calls it

相关主题
C++ online Test 2题一道c++的考古题
c++ question回答C++的弱问题
C++ 中 myobject * a =new myobject[n] 的问题[合集] C++的弱问题
进入Programming版参与讨论
p***o
发帖数: 1252
11
不能compile就是因为5啊。

【在 t****u 的大作中提到】
: 您老说得对。
: 我老说得不精确,应该加上,
: 因为下面有,
: Word* pw = new Word();
: 所以不能compile(严格说来应该是link)过。
:
: one

g*******y
发帖数: 1930
12
嗯,这个题就是有两个错误。
第一个是编译错误,5,函数parameter list中的有默认值的参数需要是在trail上。
然后如果把5 fix了,接着就会有第二个错误,就是link错误,call了一个没有body的
函数。

【在 p***o 的大作中提到】
: 不能compile就是因为5啊。
d****p
发帖数: 685
13

one
这个看编译器吧。我上次这么做过,多数平台上(win, linux, aix, hpux)可以,就
solaris编译报错。

【在 t****t 的大作中提到】
: 没有body也可以compile过的...甚至可以link过, as long as you don't call it.
: sometimes we delibrately omit the body (implementation) to make sure no one
: calls it

T*****J
发帖数: 193
14
那么 Word(int, float= 3.14, short); 中的int的default value是啥?
为啥只说第三个参数short没有default value呢?
谢谢

【在 g*******y 的大作中提到】
: 嗯,这个题就是有两个错误。
: 第一个是编译错误,5,函数parameter list中的有默认值的参数需要是在trail上。
: 然后如果把5 fix了,接着就会有第二个错误,就是link错误,call了一个没有body的
: 函数。

X****r
发帖数: 3557
15
因为并不需要每个参数都有缺省值,但如果有某个参数有缺省值的话,
之后的所有参数都必须有缺省值。

【在 T*****J 的大作中提到】
: 那么 Word(int, float= 3.14, short); 中的int的default value是啥?
: 为啥只说第三个参数short没有default value呢?
: 谢谢

T*****J
发帖数: 193
16
明白了, 多谢, 多谢!

【在 X****r 的大作中提到】
: 因为并不需要每个参数都有缺省值,但如果有某个参数有缺省值的话,
: 之后的所有参数都必须有缺省值。

1 (共1页)
进入Programming版参与讨论
相关主题
C++的一个小疑问,求解惑如何 initialize array member?
问个copy constructor的问题C++ online Test 2题
C++ questionc++ question
template 类的继承问题C++ 中 myobject * a =new myobject[n] 的问题
急问:compile and build dependency一道c++的考古题
问一个 copy constructor 的问题 (C++)回答C++的弱问题
C++ 问题[合集] C++的弱问题
c++ initialize structfind bugs of c++ codes
相关话题的讨论汇总
话题: word话题: int话题: short话题: default话题: float