Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
manking
1 / 1 / 0
Регистрация: 28.09.2010
Сообщений: 101
#1

Можно ли перегрузить " ' кавычки? - C++

05.11.2010, 22:02. Просмотров 543. Ответов 6
Метки нет (Все метки)

Вписываю разные значения, но компилятор говорит - требуется оператор.

operator""
operator"
operator'
operator''

Кавычки это оператор или что?

Когда я что то ввожу в кавычки то вызывается конструктор который складывает символы char?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2010, 22:02     Можно ли перегрузить " ' кавычки?
Посмотрите здесь:

C++ Как перегрузить ">>" в приложенном коде
C++ Почему запятую на класс и инт перегрузить можно, а на два инта нельзя?
Чем можно заменить функцию setlocale(LC_ALL, "RUSSIAN")? C++
C++ Можно ли получить адрес памяти где хранится буква "a"
Двумерный вектор: можно ли как-то перегрузить [] чтобы доступ был [0, 0] C++
C++ Перегрузить "operator -" так, чтобы из вектора удалялся элемент, присутствующий во втором векторе
C++ Перегрузить оператор "-" таким образом, чтобы при работе с массивами он поэлементно их вычитал
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
schdub
 Аватар для schdub
2916 / 1260 / 227
Регистрация: 19.01.2009
Сообщений: 3,274
Завершенные тесты: 1
05.11.2010, 23:52     Можно ли перегрузить " ' кавычки? #2
Нету таких операторов, а следовательно их нельзя и перегружать.
manking
1 / 1 / 0
Регистрация: 28.09.2010
Сообщений: 101
06.11.2010, 00:37  [ТС]     Можно ли перегрузить " ' кавычки? #3
Цитата Сообщение от Oleg Посмотреть сообщение
Нету таких операторов, а следовательно их нельзя и перегружать.
А что делает символ L в типах данных от windows?
C++
1
 L"текст"
Можно что то сделать, чтобы при открытии кавычек или добавлении символа перед ними, я мог бы применить к ним определенный код?
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
06.11.2010, 00:57     Можно ли перегрузить " ' кавычки? #4
нет не можете, можно макрос написать, там например
C
1
2
3
4
5
#define _t(str) "hell " #str " here"
 
int main(){
  printf(_t(is));
}
manking
1 / 1 / 0
Регистрация: 28.09.2010
Сообщений: 101
06.11.2010, 01:43  [ТС]     Можно ли перегрузить " ' кавычки? #5
Цитата Сообщение от alex_x_x Посмотреть сообщение
нет не можете, можно макрос написать, там например
C
1
2
3
4
5
#define _t(str) "hell " #str " here"
 
int main(){
  printf(_t(is));
}

Оо Спасибо.

А эти макросы не снизят производительность? Почти везде где про них упоминалось, советовали не использовать.
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
06.11.2010, 01:45     Можно ли перегрузить " ' кавычки? #6
manking, Макросы советуют не использовать в С++. В Си это естественно.
Да и как может макрос замедлить код?

#define _t(str) "hell " #str " here"

При встрече _t(str) будет заменено компилятором на "hell " "is" " here" вроде как. На тему is не уверен что прям так.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.11.2010, 02:43     Можно ли перегрузить " ' кавычки?
Еще ссылки по теме:

Как можно перегрузить [][]? C++
C++ Можно ли перегрузить [][]?
Создать класс "Строка" и перегрузить операторы C++
C++ Перегрузить операторы "+" для комплексных чисел:
Как перегрузить оператор "+" для шаблонного класса, инстанцированного разными типами? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
06.11.2010, 02:43     Можно ли перегрузить " ' кавычки? #7
Цитата Сообщение от manking
А что делает символ L в типах данных от windows?
это не windows, это си
строка типа L"..." содержит символы типа wchar_t (wide character type)
многобайтовые символы
Yandex
Объявления
06.11.2010, 02:43     Можно ли перегрузить " ' кавычки?
Ответ Создать тему
Опции темы

Текущее время: 03:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru