std::string& test_str()
{
std::string str="test";
return str;
}
int main()
{
std::string& str_ref=test_str();
std::cout<
return 0;
}
A 編譯警告
B 返回局部變量的引用,運行時出現(xiàn)未知錯誤
C 正常編譯且運行
D 把代碼里的&都去掉之后,程序可以正常運行
A void sort(class A first,class A last,class B pred)
B void template(class A,class B)sort(A first,A last,B pred)
C template void sort(A first,A last,B pred)
D template void sort(A first,A last,B pred)
4、下面說法正確的是
A C++已有的任何運算符都可以重載
B const對象只能調(diào)用const類型成員函數(shù)
C 構(gòu)造函數(shù)和析構(gòu)函數(shù)都可以是虛函數(shù)
D 函數(shù)重載返回值類型必須相同
5、若有下面的函數(shù)調(diào)用:
? fun(a+b,?3,?max(n-1,?b));?其中實參的個數(shù)是____。
A 3
B 4
C 5
D 6
#include
using namespace std;
class A {
public:
int b;
char c;
virtual void print() {
cout << "this is father’s fuction! " << endl;
}
};
class B: A {
public:
virtual void print() {
cout << "this is children’s fuction! " << endl;
}
};
int main(int argc, char * argv[]) {
cout << sizeof(A) << "" << sizeof(B) << endl;
return 0;
}
A 8 8
B 9 9
C 12 12
D 12 16
8、重載(overload)和重寫(override)的區(qū)別?
A 重載:是指允許存在多個同名函數(shù),而這些函數(shù)的參數(shù)表不同
B 重載:是指子類重新定義復(fù)類虛函數(shù)的方法
C 重寫:是指子類重新定義復(fù)類虛函數(shù)的方法
D 重寫:是指允許存在多個同名函數(shù),而這些函數(shù)的參數(shù)表不同