ColorMatrix для C++ в Studio 2015
В MSDN есть статья об особенностях объявления массивов CLR в старых и новых версиях .NET.
На практике нюансы с управляемыми массивами способны породить немало головняков.
Например, в Studio 2010 я описывал матрицу ColorMatrix для фильтрации рисунка вот так:
array <array <float> ^> ^Map = { gcnew float[] {0.30f, 0.30f, 0.30f, 0, 0}, gcnew float[] {0.59f, 0.59f, 0.59f, 0, 0}, gcnew float[] {0.11f, 0.11f, 0.11f, 0, 0}, gcnew float[] {0, 0, 0, 1, 0}, gcnew float[] {0, 0, 0, 0, 1} };
В Studio 2015 это работать не будет, породив кучу ошибок, зато сработает куда более простое и естественное
array <array <float> ^> ^Map = { {0.30f, 0.30f, 0.30f, 0, 0}, {0.59f, 0.59f, 0.59f, 0, 0}, {0.11f, 0.11f, 0.11f, 0, 0}, {0, 0, 0, 1, 0}, {0, 0, 0, 0, 1} };
В остальном код из статьи по ссылке выполнится.
24.10.2016, 13:31 [4025 просмотров]