| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Порт на msvc |
| Автор: C4Grey 28.3.2008, 00:35 | ||||||
| Салют, Homo Programaticus! Сразу перехожу к проблеме:
Вот такой код есть...Возникла необходимость просто портировать его на msvc, итог:
В строчке vec3_t(float x, float y, float z, float w) : xmm((float4_t){x,y,z,w}) {}; Вдает кучу ошибок: Error 1 error C2958: the left parenthesis '(' found at 'd:\kvaz studio\visual studio 2008\projects\vect_3\vect_3\vect_c.cpp(19)' was not matched correctly Error 2 error C2059: syntax error : ')' Error 3 error C2059: syntax error : '{' Error 4 error C2334: unexpected token(s) preceding '{'; skipping apparent function body Error 5 error C2143: syntax error : missing ')' before '{' Error 6 error C2059: syntax error : ')' Error 7 error C2143: syntax error : missing ';' before '}' и в
конкретно return xmm + b.xmm; Ошибка: Error 8 error C2676: binary '+' : 'ogldemo::float4_t' does not define this operator or a conversion to a type acceptable to the predefined operator то же самое и для второго оператора... Использую Microsoft Visual Studio 2008. Поправте, пожалуйста... |
| Автор: korian 28.3.2008, 07:20 |
| ((float4_t){x,y,z,w}) - интересная конструкция... она легальна в C++? vec3_t(float x, float y, float z, float w) : xmm((float4_t){x,y,z,w}) {}; vec3_t(float x, float y, float z, float w) { Component(1) = x; Component(2) = y; Component(3) = z; Component(4) = w; } а по второму хз, ну нету оператора + для типа float4_t... |
| Автор: C4Grey 28.3.2008, 20:45 |
| korian, спасибо. А по поводу оператора, ладно, буду использовать тогда return _mm_add_ps, return _mm_mul_ps. |