多选题
设一个程序只有两个文件 main.cpp 和 function.cpp,其中文件 function.cpp 的全部内容如下∶
extern int strange_var;
extern int function_one(int para_one);
static int square(int num);
int square(int num)
{
return num * num;
}
int function_one(int para_one)
{
int sum, index;
for (sum = 0, index = 0; index < para_one; index++) sum = sum + square(index);
strange_var = sum;
return sum;
}
下面陈述中正确的是∶(多重选择)( )
A、如果在 main.cpp 中包括编译指令#include “function.cpp”,则在该文件中可调用文件function.cpp 中的函数 square。
B、如果在 main.cpp 中包括语句∶extern int square(int num),则在该文件中可调用文件function.cpp 中的函数 square。
C、如果整个程序要编译通过,则文件 main.cpp 中必包括如下两条语句之一∶
extern int strange_var = 0; 或 int strange_var = 0;
其中常量 0 可换成其他合法的 C++常量。
D、在文件 main.cpp 中可包括如下语句∶extern int function_one(int para_one);