¿Cuál es la forma correcta para inicializar una matriz en C ++ 98?
Pregunta
- No estoy programador
- Quiero compilar Inkscape en Win32, y tropezó con estos mensajes de error:
ui / diálogo / filedialogimpl-win32.cpp: 1379: error: en 'matriz' C ++ 98 debe ser inicializado por constructor, no por '{...}'
hacer [1]: *** [ui / diálogo / filedialogimpl-win32.o] Error 1
El código sospechoso de filedialogimpl-win32.cpp
:
... // Draw the image if(_preview_bitmap_image) // Is the image a pixbuf? { // Set the transformation const Matrix matrix = { scaleFactor, 0, 0, scaleFactor, svgX, svgY }; context->set_matrix (matrix); ...
Entonces, ¿cómo es que está escrito en la norma 98 C ++?
He buscando en Google, pero nadie encontré esa manera, se podría estar relacionado?
Solución
En lugar de
const Matrix matrix = {
scaleFactor, 0,
0, scaleFactor,
svgX, svgY };
no debería ser algo como esto:
const Matrix matrix(
scaleFactor, 0,
0, scaleFactor,
svgX, svgY );
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow