|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Кучка невероятно простых вопросов )
Здравствуйте.
Писал 4 месяца на Делфях, однако за кким то чудом купили Embarcadero C++, и надо переползать на него. Весь код что есть, портировать в С++. Посему желаю задать простейшие вопросы. 1. Тип string. В делфях он string. Как мне в C++ создать переменную srting? 2. Функции. В Делфях я сначала функцию писал public, писал желаемые параметры и тип, тыкал Ctrl + Shift + C, и запиливалась заготовка. Как в C++ 2010 создавать правильно функкцию? Например в Делфи такая Код:
procedure Add(a,b,c : string) 3. На форме есть Image1, в свойствах забита картинка, bmp. Не могу рисовать программно, как только делаю Код:
image1->Canvas->Rectangle(10,10,20,20); Заранее спасибо за ответы, товарищи |
#2
|
||||
|
||||
Все эти вопросы надо задавать гуглу, а не форуму! Но что поделать, добрый я сегодня.
Цитата:
Код:
#include <string.h> string str; // нереально трудно, правда? Цитата:
Код:
void Add(string a, string b, string c); // тоже невероятно jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
||||
|
||||
В принципе - вероятно, пробовал. Но отсюда проистекают 2 более глубоких вопроса. Я не зря спросил именно так, чтобы быть уверенным что отталкивают правильно. Продолжаем марафон нубских вопросов :
1. Я делал Код:
#include <string> 2. Второй вопрос - интереснее. В делфях я создавал функцию так - сначала в паблике писал ее имя и параметры, далее тыкал Ctrl + Shift + C, и создавалась заготовка, из которой можно было работать с компонентами на форме. Если создать просто так, то свойства того же самого image1 после . / -> не раскрываются, приходится перед именем компонента ставить название формы на которой он расположен. Как с этим быть в С++? Вот пишу я такой : Код:
void Add(string a, string b, string c); Код:
Image1-> Чувствую в С++ нужно проделывать нечто аналогичное. Спасибо душевное за ответы |
#4
|
||||
|
||||
Насчет отличия String и string.
string относится к STL. То есть к стандартной библиотеке классов C++. String же - это делфовская строка, подключенная к C++. Лучше использовать string, потому что при необходимости переноса кода на другой компилятор со String возникнет множество проблем. Сам на это натыкался. Цитата:
Цитата:
Цитата:
Для C++ аналог Цитата:
Серьезный минус C++ билдера - отсутствие подчеркивания ошибок и отрубание автодополнения в случае наличия ошибок. Как только исчезает автодополнение - знай, где-то ошибка. jmp $ ; Happy End! The Cake Is A Lie. Последний раз редактировалось Bargest, 21.03.2013 в 23:56. |
#5
|
||||
|
||||
В Unit2.h ставлю
Код:
#include <string.h> Код:
public: // User declarations __fastcall TForm_Sut(TComponent* Owner); void TForm_Sut::Draw(int IDName); Код:
void TForm_Sut::Draw(int IDName) { } Код:
[BCC32 Error] Unit2.cpp(11): E2147 'string' cannot start a parameter declaration Последний раз редактировалось alexusankov, 22.03.2013 в 11:13. |
#6
|
||||
|
||||
Я перепутал. #include <string>. Без ".h".
jmp $ ; Happy End! The Cake Is A Lie. |
#7
|
||||
|
||||
Еще пару моментов момент :
1.насчет третьего вопроса, подскажите комрады, очень хочется перед началом рисования графика на канвасе отображать красивость какую нить 2. В Делфях я часто делал так: Код:
MSS.DelimitedText := Text; MSS.Delimiter = ","; a := MSS[0]; b := MSS[1] Код:
int fxs = 0; int PointS, PointE; MASS->DelimitedText = "100,200,400,630"; MASS->Delimiter = ','; while (fxs > MASS->Count) { PointS = StrToInt(MASS->Strings[fxs]); PointE = StrToInt(MASS->Strings[fxs + 1]); fxs =+ 2; } Последний раз редактировалось alexusankov, 23.03.2013 в 10:43. |