Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
268 views
in Technique[技术] by (71.8m points)

c++builder xe8 - With Do Begin Statement in C++ Builder

I wanna know how to write the following codes in C++ Builder by using With Do Begin statement similar to Delphi.

I tried with ComboBox->Text .... do ... try and it's not working. I tried with just do ComboBox->Text .... try, also not working.

if (ComboBox->Text.operator==(String("C++ Builder XE7")))
  {
  try
    {

     // do something

   if ((Form1->Memo1->Lines->Text).Pos("<") !=0)
      {

      // do something 

      }
    }
 catch(Exception &ex)
  {
   ShowMessage(ex.ToString());
  }


if (ComboBox->Text.operator==(String("C++ Builder XE8")))
  {
  try
    {

     // do something

   if ((Form1->Memo1->Lines->Text).Pos("<") !=0)
      {

      // do something 

      }
    }
 catch(Exception &ex)
  {
   ShowMessage(ex.ToString());
  }
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

There is no equivalent to Delphi's with statement in C++. The best you can do in C++ is use pointers/references instead, eg:

TComboBox *cb = ComboBox;
TStrings *lines = Form1->Memo1->Lines;

if (cb->Text == "C++ Builder XE7")
{
    try
    {
        // do something

        if (lines->Text.Pos("<") != 0)
        {
            // do something 
        }
    }
    catch(const Exception &ex)
    {
        ShowMessage(const_cast<Exception&>(ex).ToString());
    }
}

if (cb->Text == "C++ Builder XE8")
{
    try
    {
        // do something

        if (lines->Text.Pos("<") != 0)
        {
            // do something 
        }
    }
    catch(const Exception &ex)
    {
        ShowMessage(const_cast<Exception&>(ex).ToString());
    }
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...