Перейти к содержанию

С/С++ Вопросы и ответы ()


Рекомендуемые сообщения

и в base нужно заносить только те процедуры которые хочеьш полиморфно вызывать
Все переправил, теперь ругается на
class base {
public:
virtual void Paint(int x, int y, const char z)=0;
virtual void Fall(void)=0;
virtual void goLeft(void)=0;
virtual void goRight(void)=0;
virtual void goDown(void)=0;
virtual void checkline(int y, int h)=0;
virtual int state;
};

[bCC32 Error] Unit1.cpp(25): E2462 'virtual' can only be used with non-template member functions

Full parser context

Unit1.cpp(17): class base

строчка с virtual int state; (из класса палки, унаследованной от квадрата)

Ссылка на комментарий

Новая беда - ошибки внутри fstream.h/fstream, iostream.h/iostream и istream/istream.h. В общем более 50 штук.

На днях довелось покодить в embarcadero, правда под хрюшу, так вот, использовал fstream, проблем не было никаких

Ссылка на комментарий
  • 7 месяцев спустя...

Подскажите, я вот изучаю Visual Studio C++, и нигде не могу найти инфы о таком типе указателей:

Button ^p;

хотел создать массив но не выходит... раньше работал с формами только в Borland.

И еще один вопрос, как включить дополнительные компоненты в добавку к стандартным в формах, я что то рылся и ничего толкового не нашел, а мне нужен аналог ClientSocket и ServerSocket из борланда, и кое что другое...

PS: Заранее спасибо!

Ссылка на комментарий

Cristian

Button ^p;

Насколько я понял, вы пытаетесь работать с Visual C++ .NET, расширением С++ под .NET.

Мое личное мнение таково - учите либо C# сразу, либо действительно С++, не .NET и не Borland. Потому-что первый выродок от МС с целью популяризации своих тру технологий, никак и ни зачем не нужен(помним J++ и иже с ним), второй не С++ вовсе (не стандарт плюет, и вообще сделан ради того, чтобы формы от Делфи делать)

Ссылка на комментарий

0xDEADBEEF

Я понятия не имею пока что за Visual C++.NET... Просто мы писали программы только в консоли на Си, но потом самостоятельно изучил более менее Borland C++ Builder, формы, чтобы программы были с интерфейсом, но борланд насколько я знаю не поддерживается больше, и поэтому мне посоветовали сразу перейти на Visual C++. Сейчас я изучаю некоторые компоненты для создания интерфейса в Windows Forms Aplication, вот поэтому и спрашиваю, что за непонятный указатель... и нету интернет компонентов. Вот к примеру мы писали шахматы на Борланде, вместо доски создали кучу SpeedButton-в, и затем создали массив указателей такого типа, и управляли доской с помощью них, естественно предварительно привязав кнопки к ним, а здесь не создается ))))) Я в этом не спец... поэтому и не пойму ниче....

Ссылка на комментарий

Cristian

Borland исказил ваш разум и заставил блуждать в потемках долгие лета...

На самом деле С++ не привязан ни к одной библиотеке или платформе. Windows Forms Application - то как раз таки библиотека окошек из .NET, сделанная далеко не для него. Советую взять Старуструпа и поставить какой-нибудь *никс, иначе настоящего С++ вам не видать...

Ссылка на комментарий

0xDEADBEEF

Я знаю что это библиотека.

На Линуксе я работал.....

Ну все же, как хотя бы подскажите преобразовать указатели типа ^ в *. Или хотя бы как создать массив таких указателей ^.

Ссылка на комментарий

Помогите доделать =)


#include
int a,b,c, N=5, x1=190, y1=100,x2=370, y2=280;
float x,y,h;
void main ()
{
int a=DETECT, b;
initgraph (&a, &b, "c:\\tc\\bgi");
{
setcolor (15);
h=(x2-x1)/(N+1.);
rectangle (x1,y1,x2,y2);
for (x=x1+h; xline (x,y1,x,y2);
for (y=y1+h; yline (x1,y,x2,y);
}
getch ();
closegraph ();
}
#include

вот нарисовал, но как закрасить клеточки через раз? А что-то не получается.

Через массив вроде как делаю, но не выходит(

Ссылка на комментарий

мб сделать что-нибудь вроде

int isCanColor = 2;
bool isCanColorize()
{
if (isCanColor % 2) {
--isCanColor;
return true;
}
++isCanColor;
return false;
}

и

if (isCanColorize()) {
// здесь код закраски
}

Первое что в голову пришло)

Ссылка на комментарий

Whirpool

не, так непойдёт=) если поле чётного размера то нетополучится...


int n=8;//размер поля
// false - первая клетка не красится / true - красится
bool col = false
for(int i=0;i for(int j=0;j if (col = !col){
// закрашивание i j клетки
}
}
if(n%2==0)
col = !col;
}

Ссылка на комментарий

CooDi

разве?

if (var = false) { /* не выполнится */}
if (var = true) { /* выполнится */ }

всю эту канитель проверил как в неверной студии, так и на г++ - работает

Ссылка на комментарий

Вопрос по Visual C++, я создаю форму, ставлю как фон картинку, далее создаю PictureBox, ставлю другую картинку на него, а потом на PictureBox размещаю Label с надписью, делаю цвет транспарант, и фон этого лабела просвечиваем прям до формы, то есть фоном лабела стал фон Формы самой, как сделать так чтобы просвечивало до puxtureBox ?

123.jpg

Как видно на рисунке, Label прозрачный, но эта прозрачность непосредственно до формы, а обьекты Button и PictureBox, расположенные сзади, перекрыты!

Ссылка на комментарий

ну судя по всему парент у лайбла это форма, возможно поможет если парента указать пикчурбокс.

PictureBox MyPB;

TLabel *label=new Label(MyPB);

label->Parent=MyPB;

чтото типо того.

Ссылка на комментарий
  • 2 недели спустя...

Ну раз уж так, давайте начнем священные войны

Вот что очень давно хотелось обсудить в круге иммено бурятских сишников:

1. Отличие С от С++. Имеется ввиду не банальное наличие классов/перегрузок/шаблонов, а нечто более существенное: идиомы и средства.

Прежде, чем спорить о различных аспектах языка С, отличии С и С++ и т.д. надо знать мнемокод процессорных комманд и уметь пользоваться каким-либо отладчиком. Если не лень, то вместо рекурсивного гугления просто дизассемблировать и смотреть. Никаких проблем с типами!

Разница между языками - типы.

Ссылка на комментарий

C++ более контекстно-зависимый язык чем C, что обеспечивается типами: ООП, шаблоны, специализации, перегрузки ...

С фактически контекстно-зависим, за исключением неявного приведения и является просто макроассемблером с единым наименованием макросов с целью научить Эллочку-людоедку (кстати безуспешно). Уж лучше бы ее учили макроассемлеру. В С и С++ плохая система типов, сравните с Haskell. А фразы вроде " он гибкий" или " на на нем написаны операционные системы" это попугайство и глупость. Вся "гибкость" это введение в АЛГОЛ указателей, всего лишь доступ к памяти по косвенной адресации (LEA в процессорах Intell) и typedef для рекурсивного определения новых типов. Т. е. С и С++ я бы не называл языками, потому что их не может освоить Эллочка-людоедка!

Ссылка на комментарий

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...