estoy estudiando de un libro, pero no se hace mencion de la linea "using namespace std;"
Eso indicaría un libro muy viejo, por ejemplo los enfocados en productos de Borland no mencionan esa sentencia ya que los compiladores obsoletos de esa compañia no la soportan.
En cuanto a lo de int main(), segun el libro es el que toma por defecto cuando se escribe main(), y es una cuestion de gusto personal escribir "int main()" o "main()"
No. Solo en C estándar (ISO C90) se puede omitir el tipo y este se toma como "int". En el "nuevo" estándar de C (ISO-C99) y el de C++ no se puede ya que es un error.
Cursos y/o libros aceptables para aprender C++ se listan en uno de los temas fijos. Otros dos libros muy buenos (pero en ingles) son:
----
Accelerated C++: Practical Programming by Example
Andrew Koenig and Barbara E. Moo
Addison-Wesley, 2000
ISBN 0-201-70353-X
----
C++ Primer, 4th Edition
Stanley B. Lippman, Josée LaJoie, Barbara E. Moo
Addison-Wesley Professional, 2005
ISBN-10: 0-201-72148-1
ISBN-13: 978-0-201-72148-5
----
Un saludo