VC++ и valarray
Кто-нибудь может помочь с одной проблемкой разобраться.
это типа смешно?
Опиши проблемку, короче.
Проблема в том, что я не могу использовать valarray
есть проект
все работает и так далее.
стоит добавить
#include <valarray> и using namespace std;
как я получаю кучу ошибок со сылкой на файл valarray
например -
c:\program files\microsoft visual studio\vc98\include\valarray(104) : error C2059: syntax error : 'function-style cast'
c:\program files\microsoft visual studio\vc98\include\valarray(167) : see reference to class template instantiation 'std::valarray<_Ty>' being compiled
ну ответь хоть что-нить
хз.
жалко:(
заколебалась уже разбираться!
ты чего сегодня утром на мобиле звук выключила?
//////////////////////////////////////////////////////////////////////
//
// Compile options needed: /GX // может дело в этом, попробуй включить в settings проекта хэндлить ексепшны и юзать RTTI инфу, два Checkbox'a на вкладке C/C++, если я правильно помню
//
// Opequal.cpp : Illustrates how to define the operator== to compare
// vectors.
//
// Functions:
//
// vector::operator== - Vector equality comparison.
// vector::push_back - Appends (inserts) an element to the end of a
// vector, allocating memory for it if necessary.
//
//////////////////////////////////////////////////////////////////////
// The debugger can't handle symbols more than 255 characters long.
// STL often creates symbols longer than that.
// When symbols are longer than 255 characters, the warning is disabled.
#pragma warning(disable:4786)
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std ;
using namespace std::rel_ops ;
// The ID class is used for team scoring. It holds each player's name
// and score.
class ID
{
public:
string Name;
int Score;
ID : Name("" Score(0) {}
ID(string NewName, int NewScore) : Name(NewName Score(NewScore) {}
};
давай я с тобой прогой поделюсь!
самое странное, что старые проекты работают
я уже чуть ли не по букви сверила что там и где стоит.
как же заставить ее работать...
Лечилось ручной правкой некоторых .h-файлов.
По крайнее мере, станет яснее, дело ли в настройках в проектнике (.dsp ) или в исходниках. Я бы попробовал.
а что править-то?
И потом, может, у тебя дело совсем в другом?
А еще я бы попробовал добавить в проект define __cplusplus. Но без особой надежды :-)
нет
говорю же
без объявления valarray все равботет как часы
Правда это не в студии было, а в gcc, но это не важно.
На работе я сейчас... Потом помогу
странно все это
то я врядли исправлю
я вообще не понимаю чего ей там не нравиться
А если его в стандартном afx файле включить?
И вообще, ты бы написала здесь первые 10 ошибок, которые выдаются, а то мало ли.
а остальные такие же
Напиши тогда начало файла, куда его добавляешь (вместе с ним).
вставила в sdfaux
#include <valarray>
using namespace std;
c:\program files\microsoft visual studio\vc98\include\valarray(104) : error C2059: syntax error : 'function-style cast'
c:\program files\microsoft visual studio\vc98\include\valarray(167) : see reference to class template instantiation 'std::valarray<_Ty>' being compiled
c:\program files\microsoft visual studio\vc98\include\valarray(104) : error C2334: unexpected token(s) preceding ':'; skipping apparent function body
c:\program files\microsoft visual studio\vc98\include\valarray(167) : see reference to class template instantiation 'std::valarray<_Ty>' being compiled
ну и так далее 2 штуки
using namespace std;
там много всякой фигни, за юзай только то, что тебе необходимо:
using std::valarray;
либо вообще везде в коде пиши явно std::valarray<int> qq ;
но только если я уберу using namespace std ничего не измениться
Если да, приведи его здесь. Может все дело в порядке включения.
// or project specific include files that are used frequently, but
// are changed infrequently
//
#if !defined(AFX_STDAFX_H__7A28AE46_5E50_11D7_AFE8_0050BF5B556C__INCLUDED_)
#define AFX_STDAFX_H__7A28AE46_5E50_11D7_AFE8_0050BF5B556C__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afisp.h> // MFC Automation classes
#include <aftctl.h> // MFC support for Internet Explorer 4 Common Controls
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
#include <valarray>
using std::valarray;
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_STDAFX_H__7A28AE46_5E50_11D7_AFE8_0050BF5B556C__INCLUDED_)
service pack 5 стоит? если нет, то поставь - очень много проблем уходит.
зы
ИМХО, конечно, для нормального C++ лучше ставить VS 2003 - там C++ стандарт почти полность поддерживается
что за 2003?
почти
что за 2003?
можно сказать, что 8, но больше тянет на 7.1, т.к. ничего кардинально, только C++ до стандарта дотянули
Поставь включение valarray в начало файла. MFC как обычно что-то засрало по дороге.
оно откомпилилось
а теперь там где я класс объявляю пихнуть #include "stdafx.h" ?
вообще говоря #include "stdafx.h" должно быть в каждом cpp файле. А если h файл, то туда valarray и отдельно включить можно.
а именно макросы min и max, в чем vs.net сразу же и признался. Так что он рулит 6го...
2долси: че из аси свалила, я тебе тока туда ответил...
Пляски с бубном начинаются.
Они уже давно закончились, ты опоздал.
у меня инет кончился:)
я бы это тоже так назвала
Яндекс на это словосочетание находит исключительно форумы и архивы рассылоок на компьютерную тематику.
и чего?
не пойму чего-то
сфета! начами спать нада, а не программить на плюсах. нах.
100 пудофф
Оставить комментарий
sasha007
кто нить может помочь с одной проблемкой разобраться?