I'm not a fan of this notation, because it doesn't make clear what the evaluation should apply to.
\documentclass{article}
\usepackage{amsmath}
\newcommand{\evalint}{%
\left.\kern-\nulldelimiterspace
\vphantom{\int}\right|%
}
\begin{document}
\[
\int_{-1}^{1}(8x^3-5x^2+4)\,dx=
\frac{8}{4}x^4-\frac{5}{3}x^3+4x\evalint_{-1}^{1}
\]
$
\int_{-1}^{1}(8x^3-5x^2+4)\,dx=
\frac{8}{4}x^4-\frac{5}{3}x^3+4x\evalint_{-1}^{1}
$
\end{document}

A different implementation that guarantees the limits to be (quite accurately, although not completely exact) at the same height as in the integral.
\documentclass{article}
\usepackage{amsmath}
\usepackage{xparse}
\makeatletter
\NewDocumentCommand{\evalint}{e{_^}}{%
\mathpalette\eval@int{{#1}{#2}}%
}
\newcommand{\eval@int}[2]{\eval@@int#1#2}
\newcommand{\eval@@int}[3]{%
\ifx#1\displaystyle\eval@@@int{#2}{#3}\else
\ifx#1\textstyle\big|_{#2}^{#3}\else
\vert_{#2}^{#3}\fi\fi
}
\newcommand{\eval@@@int}[2]{%
\left.\kern-\nulldelimiterspace
\sbox0{$\displaystyle\int_{#1}^{#2}$}\global\dimen1=\dimexpr\ht0+\dp0\relax
\vphantom{\int}%
\right|\!
\vcenter to\dimen1{\hbox{$\scriptstyle#2$}\vfill\hbox{$\scriptstyle#1$}}%
}
\makeatother
\begin{document}
\[
\int_{-1}^{1}(8x^3-5x^2+4)\,dx=
\frac{8}{4}x^4-\frac{5}{3}x^3+4x\evalint_{-1}^{1}
\]
$
\int_{-1}^{1}(8x^3-5x^2+4)\,dx=
\frac{8}{4}x^4-\frac{5}{3}x^3+4x\evalint_{-1}^{1}
$
\end{document}

\bigg\vert
? tex.stackexchange.com/a/38870/38080\vphantom
doing there?\tfrac{...}{...}
\left
-\right
you should apply it to the second term:... = \left. \frac{8}{4}x^4-\frac{5}{3}x^3+4\right\rvert_{1}^{-1}