Название: Перенос строк кода, как??? Отправлено: PavelVX от Июль 04, 2011, 11:59 Заранее извиняюсь за ламерский вопрос, но: как переносить строки в Qt(С++)?
Поясняю: QString strSQL; strSQL = "select f1, f2, f3 " <------ как тут перенести код, что бы все осталось читабельным? "from t1" <------ "inner join t2 on t1.f1 = t2.f1"; В обычных случаях просто делаем перенос после зяпятой, но тут идет QString, который прерывать нельзя. Как в данном случае переносить? Название: Re: Перенос строк кода, как??? Отправлено: Denjs от Июль 04, 2011, 12:07 гм... не знаю где в каком С++ вы можете делать перенос строк после запятой...
а в С++/Qt символ переноса строки экранируется обратным слэшом ( \ ). По моему так) ;D Код: QString strSQL; удачи. Название: Re: Перенос строк кода, как??? Отправлено: iks от Июль 04, 2011, 12:40 рабочий вариант через \ или можно
Код
Название: Re: Перенос строк кода, как??? Отправлено: PavelVX от Июль 04, 2011, 12:41 Про зяпятую имелось ввиду ситуация типа:
void f1(arg1, arg2, <--- тут так можно переносить arg3); За вариант со слешем спасибо, только синтаксис чуть чуть не такой(закрывающих и открывающих кавычек не хватает): QString strSQL; strSQL = "select f1, f2, f3 "\ "from t1 "\ "inner join t2 on t1.f1 = t2.f1"; Хех, уже опередили с кавычками! Но все равно спасибо! Название: Re: Перенос строк кода, как??? Отправлено: PavelVX от Июль 04, 2011, 12:50 с плюсами в начале не хочет :(
error: invalid operands of types 'const char [66]' and 'const char [41]' to binary 'operator+' Название: Re: Перенос строк кода, как??? Отправлено: kambala от Июль 04, 2011, 12:52 а с каких пор тут вообще слэш нужен (это ж не макрос)? всю жизнь работало без него
Код
Название: Re: Перенос строк кода, как??? Отправлено: Denjs от Июль 04, 2011, 13:15 а с каких пор тут вообще слэш нужен (это ж не макрос)? всю жизнь работало без него слеш нужен если мы хотим сделать многострочную строку))) т.е. что бы в строке были символы перевода строк.Код
Код создает в переменной значение Цитировать select f1, f2, f3 from t1 inner join t2 on t1.f1 = t2.f1 , (которое будет так одной строкой и выводиться (через qDebug() например) )Сравните это с Код
Цитировать select f1, f2, f3 \n from t1 \n inner join t2 on t1.f1 = t2.f1 что при выводе (через тот-же qDebug() - скорее всего переродится в Цитировать select f1, f2, f3 from t1 inner join t2 on t1.f1 = t2.f1 вот и вся разница. Хотя ваш синтаксис я практически никогда не видел... он работает? ;D А если же автор имел в виду про перенос аргументов в сигнатуре функции при вызове - то как угодно ничего не надо. Код: rez=myFunction ( Название: Re: Перенос строк кода, как??? Отправлено: kambala от Июль 04, 2011, 13:25 а я этот синтаксис со слешами впервые вижу :)
но креатор выдаёт какие-то интересные вещи (и он кстати не подсвечивает все остальные части строки при переносе слешем): Код
Цитировать qwe asd zxc Код
Цитировать qwe asd zxc добавлено: а, понял. всё, что после слешей, он интерпретирует как часть строки (это табуляции), но перенос строки не вставляет. Название: Re: Перенос строк кода, как??? Отправлено: iks от Июль 04, 2011, 22:26 Проще говоря если используете
Код учитываются все пробелы, если Код то тут можно код более приемлимый писать зрительно, хотя разницы по работе ни какой Название: Re: Перенос строк кода, как??? Отправлено: PavelVX от Июль 05, 2011, 05:21 всем большое спасибо!
Конечно интересовал более наглядный способ для больших запросов. |