如何在C++;在一个文件中调用另一个文件? 如何正确地定义一个文件中的C++函数,并在不使用头文件的情况下调用另一个文件中的函数?我的老师说我会使用头文件,但教授告诉我们不要这样做。我的文件一直有很多编译问题,处理我不存在的函数。感谢您的帮助。我的程序应该使用选择排序按升序排序,使用冒泡排序按降序排序

如何在C++;在一个文件中调用另一个文件? 如何正确地定义一个文件中的C++函数,并在不使用头文件的情况下调用另一个文件中的函数?我的老师说我会使用头文件,但教授告诉我们不要这样做。我的文件一直有很多编译问题,处理我不存在的函数。感谢您的帮助。我的程序应该使用选择排序按升序排序,使用冒泡排序按降序排序,c++,function,sorting,bubble-sort,selection-sort,C++,Function,Sorting,Bubble Sort,Selection Sort,这是我到目前为止所拥有的。这是我的司机 Driver.cpp #include "selection.cpp" #include "bubble.cpp" #define ArraySize 10 //size of the array #define Seed 1 //seed used to generate random number int values[ArraySize]; int main(int argc, char** argv) { int i;

这是我到目前为止所拥有的。这是我的司机

Driver.cpp

#include "selection.cpp"
#include "bubble.cpp"

#define ArraySize 10 //size of the array
#define  Seed  1 //seed used to generate random number
int values[ArraySize];

int main(int argc, char** argv) {

    int i;



    //seed random number generator
    srand(Seed);

    //Fill array with random integers
    for(i=0;i<ArraySize;i++)
        values[i] = rand();

    cout << "\n Numbers in array." << endl;

    for(i=0;i<ArraySize; i++)
        cout << &values[i]<< "\n";

    int* array_p[] = values[]; 

    //Function call for BubbleSort
    bubblesort(array_p[], ArraySize);  

    for (i=0;i<ArraySize; i++)
        cout << &values[i] << "\n";


 //SelectionSort
    selectionsort(array_p, ArraySize);

    cout << "Numbers in ascending order." << endl;

    for (i=0;i<ArraySize; i++)
        cout << &values[i] << "\n";
    return 0;
}
#包括“selection.cpp”
#包括“bubble.cpp”
#定义数组大小10//数组大小
#定义种子1//用于生成随机数的种子
int值[ArraySize];
int main(int argc,字符**argv){
int i;
//种子随机数发生器
srand(种子);
//用随机整数填充数组
对于(i=0;i只需写入

int* bubblesort(int values[], int size);
在要调用该函数的其他源文件中(在调用之前)

请注意,如果不使用头文件,则必须手动注意,如果在一个文件中更改返回类型或参数列表,则在所有文件中进行相同的更改

还有几件事:

您可能想考虑将返回语句移动到函数的末尾,而不是返回第一次交换的时刻。或者更好地,函数返回“代码>空格”-调用方已经知道了值,因为他刚刚调用函数,所以它没有什么可以返回它。


不行,非常感谢。还有一个问题。(希望如此)如何在冒泡排序和选择排序函数中使用驱动程序中定义的同一数组?这就是您当前正在做的事情,谢谢。这意味着我可以去掉行
int*array\u p=values;
,因为我已经从其他两个文件中指向函数了。是的,您可以去掉该行,然后使用
作为传递给函数的对象。(无论如何,它是在“幕后”通过指针传递的)。
#include <iostream>



int *selectionsort(int values[], int size){


    for(int i=0; i<size-1; i++){
        for(int j=0; j<size; j++){
            if(values[i] < values[j]){
                int temp = values[i];
                values[i] = values[j];
                values[j] = temp;


                return values;
            }
        }

    }
};
int* bubblesort(int values[], int size);