The definition of functor. Is a functor a function? Many books define a function or map as a "rule" that "assigns" to each element of a set $A$ one and only one element of a set $B$. This was unsatisfying for me given the vagueness of the terms within quotation marks.
Then, I came across a definition of function as a (binary) relation with certain properties. Hence, a function $f:A\rightarrow B$ is a subset of $A\times B$ with certain properties (to ensure that for each element of $A$ there corresponds only one of $B$). This made me happy.
Now, I just started studying category theory, and the definition of a functor confused me: in many different places I saw definitions along these lines: (this is from another post, the one that I refer in the end of the question)

A (covariant) functor $F:\cal C\to D$ of categories sends objects of $\cal C$ to those of $\cal D$, and similarly morphisms in $\cal C$ to morphisms of $\cal D$, such that the following three hold true:
  
  
*
  
*Identities are preserved: $F\,\mathrm{id}_A=\mathrm{id}_{FA}$.
  
*Sources and targets are preserved: If $A\xrightarrow{f}B$, then $FA\xrightarrow{Ff}FB$.
  
*Composition is preserved: If $A\xrightarrow{f}B\xrightarrow{g}C$, then $FA\xrightarrow{Ff}FB\xrightarrow{Fg}FC$.
  

So it seems that we are back to the mysterious concept of "sending objects to..."
Now, I am not very familiar with concepts like class, maybe a functor can me seen as a relation between classes (instead of sets) or something along those lines i.e. can be seen as a function in a generalized sense for classes. I wonder...
(Note: I am aware of the question what is the difference between functor and function?, already asked in here. It is very different from this one, of course, despite the similarities in the title).
 A: The objects of a category can be extremely big, such as the category of all sets.
So,in order to aviod paradox(such as Russel's famous one),we can't call the "set" of all sets is a "set", but a class(changing a name means different "things" so the operation of a set can't be completely applied to a class).
In the same vein, we can't call the "map" between two categories a "function", because the function maps set to set. So,we choose another name "functor".
In addition,there'are more stories to be told,because a functor not only maps an object to an object, but also morphisms to morphisms. So, you can think about a functor as a "function"(which indeed is not) between both objects and morphisms.
For your another confusion, in axiomatic set theory, the sets are the most elementary things, and the functions are indeeded defined based on sets.(A function between $A$ and $B$,$f:A \to B$ is defined to be a subset of $A \times B$), and similarly we can also define a "map" between to class. So, you may not concern about "sending objects to" since it can be defined rigorously.
A: If you require that the domain of a function is a set, then a functor $F \colon \mathcal{C} \to \mathcal{D}$ is not a function because a part of its "domain" is $\text{Obj}(\mathcal{C})$ which is not a set, just a class (e.g. $\text{Obj}(\mathbf{Set})$ is the class of all the sets, which is not a set because it is too "large").
If the category $\mathcal{C}$ is small (i.e. if both $\text{Obj}(\mathcal{C})$ and $\text{Hom}(\mathcal{C})$ are actually sets), then you can see the functor $F \colon \mathcal{C} \to \mathcal{D}$ as a special case of function. 
A: There is not much difference, you just have to talk about classes (as e.g. in NBG) instead of sets (as in ZFC), as categories are usually "too big" to be sets.
Given two classes $C$ and $D$, there exists the class $C\times D$. An appropriate sub-class then can be seen as a "function" $C\to D$. It is just not possible to talk about the set/class of all functions anymore. I think this might be a reason why we distinguish between functions (from sets to classes) and functors (from classes to classes).
