Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Register FAQ Members List Calendar Guía de estilo Search Today's Posts Mark Forums Read

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 31/08/2012
viveba viveba is offline
Miembro
 
Join Date: Nov 2006
Posts: 24
Poder: 0
viveba Va por buen camino
Bloques

Es posible construir un bloque del tipo with ... do en c++?

digamos que quiero hacer esto (que hacía en delphi) en C++builder:

with ComponenteX do
begin
Propiedad1 := ....;
Propiedad2 := ....;
..............
end;

desde ya, muchas gracias a todos.
Reply With Quote
  #2  
Old 31/08/2012
Casimiro Noteví's Avatar
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Join Date: Sep 2004
Location: En algún lugar.
Posts: 32,682
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Recuerda poner títulos descriptivos a tus preguntas, "bloques" no describe nada.

Y no olvides poner los tags al código fuente, ejemplo:



¿ya leiste nuestra guía de estilo?, gracias por tu colaboración

Gracias
Reply With Quote
  #3  
Old 01/09/2012
ecfisa's Avatar
ecfisa ecfisa is offline
Moderador
 
Join Date: Dec 2005
Location: Tres Arroyos, Argentina
Posts: 10,508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Quote:
Originally Posted by viveba View Post
Es posible construir un bloque del tipo with ... do en c++?

digamos que quiero hacer esto (que hacía en delphi) en C++builder:

with ComponenteX do
begin
Propiedad1 := ....;
Propiedad2 := ....;
..............
end;

desde ya, muchas gracias a todos.
Hola.

No, pero podes reducir el largo de los nombres para que no sea tan pesado usarlos si tenes que realizar muchas asignaciones:
Code:
  TStringGrid *sg = static_cast <TStringGrid*> (StringGrid1); 
  TClientDataSet *cds = (TClientDataSet*) ClientDataSet1; // otro modo
  TDateTimePicker *dtp = static_cast<TDateTimePicker*>(DateTimePicker1); 
  //etc.
En este caso podrías usar sg en lugar de StringGrid1, cds en lugar de ClientDataSet1 y dtp en lugar de DateTimePicker1.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Reply With Quote
  #4  
Old 01/09/2012
viveba viveba is offline
Miembro
 
Join Date: Nov 2006
Posts: 24
Poder: 0
viveba Va por buen camino
Gracias por responder tan rápido.
Ya estoy incorporándolo.
Reply With Quote
  #5  
Old 10/09/2012
Ñuño Martínez's Avatar
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Join Date: Jul 2006
Location: Ciudad Catedral, Españistán
Posts: 6,025
Poder: 28
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Quote:
Originally Posted by ecfisa View Post
No (...)
¿Seguro? Hace muchísimo que no trabajo con C++, pero creo recordar que también tienen bloques with <name> { ... }. ¿O me estoy liando con PHP y JavaScript?
Reply With Quote
  #6  
Old 10/09/2012
roman's Avatar
roman roman is offline
Moderador
 
Join Date: May 2003
Location: Ciudad de México
Posts: 20,269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
No sabía que JavaScript tenía with. PHP, casi estoy seguro, no lo tiene.

// Saludos
Reply With Quote
  #7  
Old 10/09/2012
ecfisa's Avatar
ecfisa ecfisa is offline
Moderador
 
Join Date: Dec 2005
Location: Tres Arroyos, Argentina
Posts: 10,508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

En C/C++ no existe una declaración equivalente al with de Delphi.

Y creo que en Delphi hay que ser moderado con su uso por que puede hacer dificultosa la lectura del código y hasta producir resultados indeseados si no se utiliza correctamente, como por ejemplo:
Código Delphi [-]
  with Edit1, ListBox1, ComboBox1 do
  begin
    Text := 'xxx';   // ??
    Items.Add(Text); // ??
    ...
  end;
Por otro lado, usándolo bién, es una herramienta que simplifica y hasta clarifica el código.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Last edited by ecfisa : 10/09/2012 at 19:48. Reason: identación
Reply With Quote
  #8  
Old 10/09/2012
viveba viveba is offline
Miembro
 
Join Date: Nov 2006
Posts: 24
Poder: 0
viveba Va por buen camino
Hola!

No se mucho de C, apenas un poquito de pascal (delphi) y hasta ahí nomás, pero si puedo decir que lo siguiente:
with Edit1, ListBox1, ComboBox1 do
begin
Text := 'xxx'; // ??
Items.Add(Text); // ??
...
end;

No funciona pues da "error de ambigüedad" y es lógico; with (con) no puede identificar a cual identificador le corresponde cada propiedad, cuando los identificadores tienen las mismas propiedades.

la clausula with solo debe usarse cuando uno pretende darle claridad a un código, seguir ciertas normas de programación, no afecta al funcionamiento de un programa ni lo hace más grande ni más lento.

desde mi lugar -soy profesor- lo uso bastante, pero solo por cuestiones didácticas.

gracias por todo lo que se dijo al respecto y a todos los que participaron de mi simple comentario.
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Registros en en bloques de 100 o mas... Jose Roman Conexión con bases de datos 18 25/06/2010 17:42
Interconexion de bloques astwin OOP 19 15/04/2009 17:50
Generar bloques de números Natasha Nortman Varios 8 30/03/2008 15:47
Esquemas de bloques david.rguez Gráficos 1 01/09/2007 00:05
Bloques De Numeros Consecutivos dany2006 C++ Builder 5 15/11/2006 21:06


All times are GMT +2. The time now is 21:10.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi