public class Pessoa {
private String nome;
private int idade;
public String getNome() { return nome; }
public int getIdade() { return idade; }
public static Pessoa( string nome, int idade ){
this.nome = nome;
this.idade = idade;
}
}
joao = new Pessoa( "João Foobar", 33 );
joao.nome // => "João Foobar"
joao.idade // => 33
(define (pessoa nome idade)
(lambda (atrb)
(case atrb
((nome) nome)
((idade) idade)
(else (error "Mensagem inadequada para pessoa")))))
(define joao (pessoa "João Foobar" 33))
(joao 'nome) ;; => "João Foobar"
(joao 'idade) ;; => 33
#include "stdio.h"
typedef struct _Pessoa *Pessoa;
struct _Pessoa {
char *nome;
int idade;
void (*se_apresenta)();
};
Pessoa new_Pessoa( char *nome, int idade ){
Pessoa p = ( Pessoa )malloc(sizeof( struct _Pessoa ));
p->nome = nome;
p->idade = idade;
/* definição de um "método" */
void se_apresenta(){
printf( "Olá, meu nome é %s e tenho %d anos.\n", p->nome, p->idade );
}
p->se_apresenta = se_apresenta;
return p;
}
int main( int argc, char **args ){
Pessoa p = new_Pessoa( "nemesis", 30 );
p->se_apresenta();
}
begin
frmFuncionario.dtsFuncionarios.LoadFromDataSet( unFuncionario.fPesquisaPorNome( frmFuncionario.edtNome.Text ) );
end;
var DataSet ds, funcs;
string nome;
begin
with frmFuncionario do
begin
ds = dtsFuncionarios;
nome = edtNome.Text;
end;
funcs = unFuncionario.fPesquisaPorNome( nome );
ds.LoadFromDataSet( funcs );
end;
frmFuncionario.dtsFuncionarios.LoadFromDataSet(
unFuncionario.fPesquisaPorNome(
frmFuncionario.edtNome.Text ) );
Pessoa pessoa( Pessoa p ) {
void se_apresenta() {
prinf( "Olá, meu nome é %s e tenho %d anos.\n", p->nome, p->idade );
}
p->se_apresenta = se_apresenta;
return p;
}
int main( int argc, char *args ) {
Pessoa joao, paulo;
joao = Pessoa( "João Paulo", 22 );
paulo = Pessoa( "Paulo João", 19 );
pessoa( paulo )->se_apresenta();
pessoa( joao )->se_apresenta();
}
Pessoa p = new Pessoa( "foobar" );
p = Pessoa( "foobar" )