I am trying to create a median filter program under C++ with the use of a image procesing class library, calls picture.h, so I've written my code, but the compiler keep giving me a error message that I don't quite understand. Can somebody kindly explain to me what's going wrong with my program and suggest some useful resource that I possible can look up when I get stuck in this kind of situation. Thanks in advance.
Code:
#include "usage.h"
#include "picture.h"
int median(int& pel, const int **buf)
{ char array[9];
array[0]=buf[-1][-1];
array[1]=buf[-1][0];
array[2]=buf[-1][1];
array[3]=buf[0][-1];
array[4]=buf[0][0];
array[5]=buf[0][1];
array[6]=buf[1][-1];
array[7]=buf[1][0];
array[8]=buf[1][1];
for (int i=0; i<=9; i++)
{
for(int y=0; y<=8; y++)
{
if(array[y]>array[y+1])
{
int temp = array[y+1];
array[y+1] = array[y];
array[y] = temp;
}
}
pel = array[4];
return 0;
}
int main(int argc, char *argv[])
{
usage("median inpic outpic");
picture_of_int in(argv[1]);
picture_of_int out(in,median);
out.write(argv[2]);
return 1;
}
Error message under the compiler:
median2.cpp: In function 'int median(int&, const int**)':
median2.cpp:30: error: a function-definition is not allowed here before '{' token
median2.cpp:36: error: expected `}' at end of input