#include <iostream>
using namespace std;
template < class T>
class mnl{
private :
T ** mt;
int l1;
int l2;
public :
mnl( int n1,int n2) {
l1= n1;
l2= n2;
mt= new T** [ l1] ;
int i;
for ( i= 0 ; i< l1; i++ ) {
mt[ i] = new T* [ l2] ;
}
}
void cm( ) ;
void sm( ) ;
} ;
int main( ) {
mnl < int > mn( 4 ,5 ) ;
mn.cm ( ) ;
mn.sm ( ) ;
return 0 ;
}
template < class T>
void mnl< T> :: cm ( ) {
int i,i2;
for ( i= 0 ; i< l1; i++ ) {
for ( i2= 0 ; i2< l2; i2++ ) {
cout << "Scrivi il numero\n " ;
cin >> mt[ i] [ i2] ;
}
}
}
template < class T>
void mnl< T> :: sm ( ) {
int i,i2;
for ( i= 0 ; i< l1; i++ ) {
for ( i2= 0 ; i2< l2; i2++ ) {
cout << mt[ i] [ i2] << " " ;
}
cout << "\n " ;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdGVtcGxhdGU8Y2xhc3MgVD4KY2xhc3MgbW5sewoJcHJpdmF0ZToKCVQgKiptdDsKCWludCBsMTsKCWludCBsMjsKCQoJcHVibGljOgoJbW5sKGludCBuMSxpbnQgbjIpewoJCWwxPW4xOwoJCWwyPW4yOwoJCW10PW5ldyBUKipbbDFdOwoJCQoJCWludCBpOwoJCQoJCWZvcihpPTA7aTxsMTtpKyspewoJCQkKCQkJbXRbaV09bmV3IFQqW2wyXTsgCgkJCQoJCX0KCQkKCQkKCQkKCX0KCQoJdm9pZCBjbSgpOwoJdm9pZCBzbSgpOwoJCgkKCQp9OwoKCgoKCmludCBtYWluKCkgewoJCgltbmwgPGludD5tbig0LDUpOwoJCgltbi5jbSgpOwoJbW4uc20oKTsKCQoJCgkKCXJldHVybiAwOwp9CgoKCnRlbXBsYXRlPGNsYXNzIFQ+CnZvaWQgbW5sPFQ+OjpjbSgpewoJCglpbnQgaSxpMjsKCQoJZm9yKGk9MDtpPGwxO2krKyl7CgkJCgkJZm9yKGkyPTA7aTI8bDI7aTIrKyl7CgkJCQoJCQljb3V0PDwiU2NyaXZpIGlsIG51bWVyb1xuIjsKCQkJCgkJCWNpbj4+bXRbaV1baTJdOwoJCQkKCQkJCgkJfQoJCQoJCQoJCQoJfQoJCgkKfQoKCgp0ZW1wbGF0ZTxjbGFzcyBUPgp2b2lkIG1ubDxUPjo6c20oKXsKCQoJaW50IGksaTI7CgkKCWZvcihpPTA7aTxsMTtpKyspewoJCQoJCWZvcihpMj0wO2kyPGwyO2kyKyspewoJCQkKCQkJY291dDw8bXRbaV1baTJdPDwiICI7CgkJCQoJCQkKCQl9CgkJCgkJY291dDw8IlxuIjsKCQkKCX0KCQoJCgkKfQoK
compilation info
prog.cpp: In instantiation of ‘mnl<T>::mnl(int, int) [with T = int]’:
prog.cpp:42:17: required from here
prog.cpp:15:5: error: cannot convert ‘int***’ to ‘int**’ in assignment
mt=new T**[l1];
~~^~~~~~~~~~~~
prog.cpp:21:9: error: cannot convert ‘int**’ to ‘int*’ in assignment
mt[i]=new T*[l2];
~~~~~^~~~~~~~~~~
stdout