<div dir="ltr">Hola Jorge Luis,<div class="gmail_extra"><br></div><div class="gmail_extra">Sin conocer los mensajes de error ni el programa que los lanzó (compilador, enlazador, el sistema operativo), no podemos ser de mucha ayuda. De todas maneras, te doy unos matices acerca del código fuente por si te sirven para determinar el problema o quizá resolverlo:<br></div><div class="gmail_extra"><br></div><div class="gmail_extra">- El fichero de cabecera, <conio.h>, no pertenece al estándar de C/C++, por lo que tu compilador puede o no tenerlo. De todas formas, no usas ninguna función de <conio.h>, por lo que puedes eliminar su inclusión.</div><div class="gmail_extra">- Deberías #incluir los ficheros <cstdlib> y <ctime>, ya que usas las funciones estándares, 'srand()' y 'time()', respectivamente.</div><div class="gmail_extra">- Usas una plantilla de clase, 'Matrix', que tampoco es estándar. Por lo tanto, debes incluir su definición en este código fuente.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Sospecho que estás usando la biblioteca presentada en este enlace: <a href="https://ronnyml.wordpress.com/2009/07/04/operaciones-con-matrices-clase-matriz-en-c/">https://ronnyml.wordpress.com/2009/07/04/operaciones-con-matrices-clase-matriz-en-c/</a>  Si es así, entonces ten cuidado a la hora de incluir los ficheros de cabecera. Si te fijas en su ejemplo de "main.cpp", lo que hace es incluir "matrix.cpp". Esto es porque se trata de una plantilla; y las plantillas no se pueden compilar aparte.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Sinceramente, aconsejo que combines ambos ficheros, "matrix.h" y "matrix.cpp", en un solo fichero de cabecera: "matrix.h". Así no tendrás muchos problemas a la hora de usar la plantilla. Tal fichero debería serguie este esquema:<br><br><div class="gmail_extra">#ifndef MATRIX_H</div><div class="gmail_extra">#define MATRIX_H</div><div class="gmail_extra"><br></div><div class="gmail_extra">#include <iostream></div><div class="gmail_extra">#include <time></div><div class="gmail_extra">#include <cstdlib></div><div class="gmail_extra"> </div><div class="gmail_extra">using namespace std;</div><div class="gmail_extra"> </div><div class="gmail_extra">template <class T></div><div class="gmail_extra">class Matrix {</div><div class="gmail_extra">    public:</div></div><div class="gmail_extra">...</div><div class="gmail_extra">};</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">// Constructor por defecto</div><div class="gmail_extra">template<typename T></div><div class="gmail_extra">Matrix<T>::Matrix()</div><div class="gmail_extra">{</div><div class="gmail_extra">    m_rows = 4;</div><div class="gmail_extra">    m_cols = 4;</div><div class="gmail_extra">}<br>...<br><div class="gmail_extra">template<typename T></div><div class="gmail_extra">Matrix<T>::~Matrix() {}</div></div></div><div class="gmail_extra"><br></div><div class="gmail_extra">#endif // MATRIX_H<br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">Es decir, que todo el contenido de ambos ficheros queden comprendidos entre #ifndef y #endif. Ahora puedes incluir el fichero, "matrix.h", sin problemas.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Por último, aconsejo cambiar el destructor de 'Matrix', para que invoque 'delete_matrix()'; es decir,</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">template<typename T></div><div class="gmail_extra">Matrix<T>::~Matrix()</div><div class="gmail_extra">{</div><div class="gmail_extra">  delete_matrix();<br>}</div></div><div class="gmail_extra"><br></div><div class="gmail_extra">Es un grave error que este destructor no libere la memoria automáticamente, pero dejar que el código externo se responsabilice de invocar 'delete_matrix()' manualmente.</div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">Espero que esto te ayude.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Steven</div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><br><div class="gmail_quote">2016-08-25 8:57 GMT-04:00 jorge luis rios herrera <span dir="ltr"><<a href="mailto:jorge.rios.herrera@outlook.es" target="_blank">jorge.rios.herrera@outlook.es</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div dir="ltr">
<div dir="ltr" style="font-family:Calibri,"Segoe UI",Meiryo,"Microsoft YaHei UI","Microsoft JhengHei UI","Malgun Gothic",sans-serif;font-size:12pt">
<div><br>
</div>
<div><span style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;float:none;white-space:normal;display:inline!important;background-color:rgb(255,255,255)">Hola
 buen día, si podrán ser tan amables de auxiliarme con un problema de c++ que no puedo compilar ya le cambie las librerías ya hice de todo un poco pero me marca error les anexo el código.</span>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
de antemano mil gracias.</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<div style="color:rgb(34,34,34);text-transform:none;line-height:normal;text-indent:0px;letter-spacing:normal;font-family:arial,sans-serif;font-size:small;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<div>#include <iostream></div>
<div>#include <iostream></div>
<div>#include <conio.h></div>
<div> </div>
<div>using namespace std;</div>
<div> </div>
<div>int main()</div>
<div>{</div>
<div>    // Para no generar los mismos números aleatorios</div>
<div>    srand(time(NULL));</div>
<div> </div>
<div>    int n_rows;</div>
<div>    int n_cols;</div>
<div>    int col_1;</div>
<div>    int col_2;</div>
<div>    int row_1;</div>
<div>    int row_2;</div>
<div>    int scalar;</div>
<div> </div>
<div>    cout << "Ingresa nro de filas: " << endl;</div>
<div>    cin >> n_rows;</div>
<div>    cout << "Ingresa nro de columnas: " << endl;</div>
<div>    cin >> n_cols;</div>
<div>    cout << endl;</div>
<div> </div>
<div>    Matrix<int> a(n_rows, n_cols);</div>
<div>    Matrix<int> b(n_rows, n_cols);</div>
<div> </div>
<div>    // Matriz para almacenar el resultado de las operaciones</div>
<div>    Matrix<int> c(n_rows, n_cols);</div>
<div> </div>
<div>    a.fill_random();</div>
<div>    b.fill_random();</div>
<div> </div>
<div>    cout << "********** Operaciones básicas con la Matriz A **********" << endl;</div>
<div>    cout << "Matriz A " << endl;</div>
<div>    a.print_matrix();</div>
<div> </div>
<div>    cout << "El mayor de la Matriz es: " << a.get_max() << endl;</div>
<div>    cout << "El menor de la Matriz es: " << a.get_min() << endl;</div>
<div>    cout << "La moda de la Matrix es: " << a.get_mode() << endl;</div>
<div>    cout << (a.isSymmetric() ? "" : "No") << " Es simétrica." << endl;</div>
<div>    cout << (a.isIdentity() ? "" : "No") << " Es identidad." << endl;</div>
<div>    cout << endl;</div>
<div> </div>
<div>    cout << "Ingresa el escalar: " << endl;</div>
<div>    cin >> scalar;</div>
<div>    a.multiply_by_scalar(scalar);</div>
<div>    a.print_matrix();</div>
<div> </div>
<div>    cout << "Intercambio: Ingresa 2 columnas del 1 al " << n_cols << endl;</div>
<div>    cout << "Columna 1: " << endl;</div>
<div>    cin >> col_1;</div>
<div>    cout << "Columna 2: " << endl;</div>
<div>    cin >> col_2;</div>
<div>    a.swap_cols(col_1, col_2);</div>
<div>    a.print_matrix();</div>
<div> </div>
<div>    cout << "Intercambio: Ingresa 2 filas del 1 al " << n_rows << endl;</div>
<div>    cout << "Fila 1: " << endl;</div>
<div>    cin >> row_1;</div>
<div>    cout << "Fila 2: " << endl;</div>
<div>    cin >> row_2;</div>
<div>    a.swap_rows(row_1, row_2);</div>
<div>    a.print_matrix();</div>
<div> </div>
<div>    cout << "Transpuesta de A " << endl;</div>
<div>    a.get_transpose();</div>
<div> </div>
<div>    cout << "********** Operaciones con matrices **********" << endl;</div>
<div>    cout << "Matriz A " << endl;</div>
<div>    a.print_matrix();</div>
<div> </div>
<div>    cout << "Matriz B " << endl;</div>
<div>    b.print_matrix();</div>
<div> </div>
<div>    cout << "Matriz A + B " << endl;</div>
<div>    c = a + b;</div>
<div>    c.print_matrix();</div>
<div> </div>
<div>    cout << "Matriz A - B " << endl;</div>
<div>    c = a - b;</div>
<div>    c.print_matrix();</div>
<div> </div>
<div>    cout << "Matriz A * B " << endl;</div>
<div>    c = a * b;</div>
<div>    c.print_matrix();</div>
<div> </div>
<div>    a.delete_matrix();</div>
<div>    b.delete_matrix();</div>
<div>    c.delete_matrix();</div>
<div> </div>
<div>    return 0;</div>
<div>}</div>
</div>
</div></div></div></blockquote></div><br></div></div>