Ingeniería de software

19
¿Cómo atravesar un árbol sin usar la recursividad?

Tengo un árbol de nodos de memoria muy grande y necesito atravesar el árbol. Pasar los valores devueltos de cada nodo secundario a su nodo primario. Esto debe hacerse hasta que todos los nodos tengan su burbuja de datos hasta el nodo raíz. El recorrido funciona así. private Data Execute(Node...

19
¿La GPL permite que alguien obtenga el software GPL sin pagarlo?

He visto un buen tema de WordPress (GPL) a la venta. Conozco a alguien que lo compró. Tengo 2 preguntas: ¿La empresa que lo vende tiene la obligación de enviar el código fuente a quien lo solicite (clientes o no)? ¿Puede la persona que lo compró darme una copia gratis que podría usar en la...

19
¿Cuándo usar [Pure] en un constructor?

Estoy aprendiendo acerca de los contratos de código en .NET, y estoy tratando de entender la idea de constructores puros. La documentación de los contratos de código establece: Todos los métodos que se llaman dentro de un contrato deben ser puros; es decir, no deben actualizar ningún estado...

19
¿Es una buena idea "# definirme (* esto)"?

Esta macro se puede definir en algún encabezado global, o mejor, como un parámetro de línea de comando del compilador: #define me (*this) Y algún ejemplo de uso: some_header.h: inline void Update() { /* ... */ } main.cpp: #include "some_header.h" class A { public: void SetX(int x) { me.x...