Is the subobject functor really a presheaf? I refer to "Sheaves in Geometry and Logic", by S. MacLane.
Let C be a category. Dealing with a subobject of an object $D \in \text{Ob}_{\mathbf C}$, one defines an equivalence relation between morphisms towards D:

Two monomorphisms $f:A\to D$, $g:B\to D$ with a common codomain D are called equivalent if there exists an isomorphism $h\colon A\to B$ such that gh= f.
  A sbobject of D is an equivalence class of monos towards D. The collection SubC(D) of subobject of D carries a natural partial order [...].
  Then SubC(D) is the set of all subobjects of D in the category C.

I can't figure out why SubC(D) is a set, rather than a proper class! Indeed, we are considering something like an qeuivalence relation on
$\displaystyle \coprod_{A\in \text{Ob}} \text{Hom}_{\bf C}(A,D)$
which is not a set, as soon as C isn't small.
So, how can I avoid the problem?
 A: A reasonable reformulation of the question is, if there exists a set of representatives for subobjects; i.e. if there is a set of monomorphisms into our object $D$, such that every other monomorphism into $D$ is isomorphic to one of them.
This is, of course, false. Take a preorder $P$, which is a proper class, and has a maximal element $\infty$ (for example, the ordinals plus a maximal element). Then $\infty$ has no set of representatives for its subobjects.
However, it happens very often that there is a set of representatives. The category of sets or topological spaces are examples. If $C$ is a category which has the property, then the same is true for every algebraic finitary category over $C$. Thus, for example, the category of (topological) groups has the property.
A: For a general category the subobjects do indeed not have to form a set. 
In the context of MacLane/Moerdijk you only look at toposes and there one has a natural isomorphism $Sub_{\mathbf{C}}(D) \cong Hom_{\mathbf{C}}(D,\Omega)$, where $\Omega$ is the subobject classifier. 
So it follows from the axioms of a topos, (edit, thanks Mike:) if it is locally small, that $Sub_{\mathbf{C}}(D)$ is a set. When you prove that the basic examples, sheaves, finite sets, products of those, etc. are toposes you exhibit an object $\Omega$ and establish the above bijection. Before that point the left hand side could a priori be a proper class but the right hand side is a set, since you know that your category is locally small, and your bijection then shows that subobjects form a set.
Knowing this you can conclude that objects in full subcategories (edit, thanks again:) whose embedding preserves monos (e.g. if they are reflective) of toposes also have a set of subobjects, e.g. in all locally presentable categories...
