wmmail.ru – cервис почтовых рассылок на главную
написать письмо
карта сайта

С чего начать?РекламодательПравилаFAQСтатистикаБиржа статейTOP100ФоткиКонтакты
Логин:
Пароль: 
Регистрация   Забыли пароль?
WMLogin
Пользователей всего:

542666

Пользователей сегодня:

65

Пользователей online:

183

Выплачено ($): 7`602`764,53
Выплат: 8`112`007
Писем прочитано: 1`024`933`623

 
 
Online 1
Все ответы
 
 

Вопрос #43409

Внимание! В разделе вопрос-ответ запрещается:

  • Мат, оскорбления, флуд, реклама
  • Сообщения, не являющиеся вопросами/ответами
  • Нарушение законодательства РФ
  • Попрошайничество в любой форме

Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 21:20] #752603

Закрытый вопрос от пользователя К вопросу о шаблонах

Язык C++. У меня есть некоторое количество шаблонов классов, необходимо узнать которые из них являются контейнерами. Положим, известно, что любой контейнер (по крайней мере тот, что мне нужен), имеет вложенное имя типа iterator. Мне надо сделать некоторое условие, которое говорит, что с контейнерами мы поступаем так, иначе этак. Подскажите, пожалуйста, если знаете как.
Раздел: Программирование, последний комментарий: 14.04.2012 00:12
Вопрос закрыт пользователем vakmus

Ответы
Ответов всего: 16  вопрос закрыт 
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 21:37] Lexchz Рейтинг 0.00     Стена пользователя Lexchz +26  Все ответы пользователя Lexchz

думаю, тебе на специализированный форум нужно обратится... вред ли здесь есть знатоки C++.
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 21:40] #752603   Все ответы пользователя

Lexchz пишет думаю, тебе на специализированный форум нужно обратится... вред ли здесь есть знатоки C++.

Посмотрим.
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 21:59] #682851   Все ответы пользователя

Используй теги if (1 Условие) else (Прое условие).
Или можно еще воспользоваться тегом for.
В первом случае у тебя будет просто условие, а во втором случае это уже будет подбор типа матрицы!
В принцепе это не очень сложно!
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 22:02] #752603   Все ответы пользователя

#682851 пишет perfectum

Смешно. Раздул. Тэги.. Язык С++ компилируемый со статической типизацией.:wink2:

Добавлено спустя 03 минуты 00 секунд
#682851 пишет if (1 Условие) else (Прое условие).

Интерес заключается в том, как можно эти условия построить. Мы можем отталкиваться только от того, что пока шаблоны не инстанцированы, можно что-то сделать.
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 22:09] #682851   Все ответы пользователя

#752603 пишет
#682851 пишет perfectum

Смешно. Раздул. Тэги.. Язык С++ компилируемый со статической типизацией.

Я не очень силен в С++ я этот предмет 3+ закрыл! И написал исходя из того, что просил! Мы так условия вбивали!

Добавлено спустя 03 минуты 27 секунд
#752603 пишет
#682851 пишет if (1 Условие) else (Прое условие).

Интерес заключается в том, как можно эти условия построить. Мы можем отталкиваться только от того, что пока шаблоны не инстанцированы, можно что-то сделать.

Исходник посмотри. Т.Е. Файл с расширением .с открой в блокноте и вот тебе весь код как на ладоне будет!
Если же уже все скомпелировано, т.е. У тебя есть фал программы в формате .exe, то я не знаю как его можно посмотреть, там тот же код только бинарный и его без соответствующего ПО не разберешь. К сожаления у меня подобного ПО нет!
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 22:15] #752603   Все ответы пользователя

#682851 пишет Я не очень силен в С++ я этот предмет 3+ закрыл! И написал исходя из того, что просил! Мы так условия вбивали!

Я боюсь, что это достаточно серьезный вопрос, непростой. Все равно спасибо за поддержку! Кстати, никаких "тэгов" в С++ нет. А язык очень интересный и мощный, поинтересуйтесь, авось понравится.

Добавлено спустя 29 секунд
#682851 пишет Исходник посмотри.

Я сам исходник пишу.

Добавлено спустя 01 минуту 07 секунд
#682851 пишет К сожаления у меня подобного ПО нет!

У меня есть.
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 22:24] #682851   Все ответы пользователя

#752603 пишет Кстати, никаких "тэгов" в С++ нет. А язык очень интересный и мощный, поинтересуйтесь, авось понравится.


А как назвать значение при вводе которого компелятор понимает, что Вам нужно выполнить такое-то действие?
Разви это не "тег" называется?
Сейчас напишу самый простой исходник условий!
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 22:26] #752603   Все ответы пользователя

#682851 пишет Разви это не "тег" называется?

Вы скорее всего имеете ввиду макросы.

Добавлено спустя 01 минуту 10 секунд
#682851 пишет Сейчас напишу самый простой исходник условий!

Жду, выясним, где друг-друга не понимаем.:ok:
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 22:42] #682851   Все ответы пользователя

#752603 пишет Жду, выясним, где друг-друга не понимаем.:ok:

Вот смотрите!
Я конечно не профи, да и в коде могут быть некоторые ошибки. Точнее у Вас могут выйти каракули вместо русских букв. Я просто не помню какую библиотеку нужно приатачить, чтобы русские буквы отображались корректно!
http://wmgid.ru/ishodnik.png
Код написал только что в блокноте!
Кстати, у нас обучение проходило на английском языке и мы теги называли тегами. Хотя в принцепе разници в том как называть нет! Гораздо важнее суть! Кстати, можете скомпелировать и посмотреть, что получится!
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 22:53] #752603   Все ответы пользователя

#682851 пишет Вот смотрите!

Заранее прошу прощение за критику. Она конструктивна. Код заслуживает отдельной похвалы. Я более чем уверен, что он набит в блокноте или еще где и не тестирован. Перепутан очевидно operator = с operator ==
Поэтому увидим все строчки, которые вы выводите на печать (т.к. 0 не присваевается в условиях, а все остальное, так сказать, true). Но я понимаю, это опечатка, а таки где здесь "тэги"?

Добавлено спустя 06 минут 25 секунд
#682851 пишет Кстати, у нас обучение проходило на английском языке и мы теги называли тегами.

Кстати, вот сейчас перелистал последний исошный стандарт 2011 года. Поминания о тэгах, как элементах языка там нет.

Добавлено спустя 07 минут 58 секунд
То, что есть, маленько к другому относится.
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 23:05] #682851   Все ответы пользователя

#752603 пишет
#682851 пишет Вот смотрите!

Заранее прошу прощение за критику. Она конструктивна. Код заслуживает отдельной похвалы. Я более чем уверен, что он набит в блокноте или еще где и не тестирован. Перепутан очевидно operator = с operator ==
Поэтому увидим все строчки, которые вы выводите на печать (т.к. 0 не присваевается в условиях, а все остальное, так сказать, true). Но я понимаю, это опечатка, а таки где здесь "тэги"?

scanf - тег используемый для того, чтобы считать какое либо значение и поместить его в буфер.
if условие (Если введеное число соответствует тому, что заключено в внутри тега, то выполняется действие: printf, которое значает вывести на экран, то что в скабках.)
else условие (Если значение не подходит, не к одному из условий выше, то выполняется, то действие, которое в теге else)
Под 0 Вы наверное имели ввиду return 0;? Если так, то return 0; означает, что программа не должна повторяться, если же вместо return 0; поставить return 1; то программа начнется заново с ввода числа.
Надеюсь я все понятно написал!
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 23:08] #752603   Все ответы пользователя

#752603 пишет Поэтому увидим все строчки, которые вы выводите на печать

естественно, кроме той, что "Научитесь читать"
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 23:09] #682851   Все ответы пользователя

#752603 пишет
#682851 пишет Кстати, у нас обучение проходило на английском языке и мы теги называли тегами.

Кстати, вот сейчас перелистал последний исошный стандарт 2011 года. Поминания о тэгах, как элементах языка там нет.

Добавлено спустя 07 минут 58 секунд
То, что есть, маленько к другому относится.

Ну не знаю, я говорю так как нас учили. Возможно не совсем корректно учили, но лично для меня это не так важно. Я не собираюсь быть програмистом.

Добавлено спустя 03 минуты 47 секунд
#752603 пишет
#752603 пишет Поэтому увидим все строчки, которые вы выводите на печать

естественно, кроме той, что "Научитесь читать"

Такого не должно быть! Там все строки не выйдут. А выйдет только то что необходимо.
Если к примеру Вы введете 1, то выйдет
"Вы ввели число 1"
Попробуйте скомпелировать!
Или если хотите, я скомпелирую и выложу екзешник!
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 23:17] #752603   Все ответы пользователя

#682851 пишет
#752603 пишет
#682851 пишет Вот смотрите!

Заранее прошу прощение за критику. Она конструктивна. Код заслуживает отдельной похвалы. Я более чем уверен, что он набит в блокноте или еще где и не тестирован. Перепутан очевидно operator = с operator ==
Поэтому увидим все строчки, которые вы выводите на печать (т.к. 0 не присваевается в условиях, а все остальное, так сказать, true). Но я понимаю, это опечатка, а таки где здесь "тэги"?

scanf - тег используемый для того, чтобы считать какое либо значение и поместить его в буфер.
if условие (Если введеное число соответствует тому, что заключено в внутри тега, то выполняется действие: printf, которое значает вывести на экран, то что в скабках.)
else условие (Если значение не подходит, не к одному из условий выше, то выполняется, то действие, которое в теге else)
Под 0 Вы наверное имели ввиду return 0;? Если так, то return 0; означает, что программа не должна повторяться, если же вместо return 0; поставить return 1; то программа начнется заново с ввода числа.
Надеюсь я все понятно написал!

С++ не html, нет там тэгов. Можно создать там подобие разметочного языка, но это очень и очень плохой стиль. То, что Вы называете тэгами, это функции (function), инструкции (statement), операторы (operator). Какие тэги, боже мой.. Кстати, на С++ я программирую уже около 10 лет, код я понял. Он, кстати, не на С++, а на С, и его в три строчки уложить можно.

Добавлено спустя 06 минут 07 секунд
#682851 пишет Такого не должно быть! Там все строки не выйдут. А выйдет только то что необходимо.

Разбираем.
Написано
if( foo = 1 ) do_something();
Вчитываемся в условие. Что происходит: переменной foo присваивается единица. Результат операции -- значение foo, т.е. 1. Т.е. формально, я могу переписать предыдущую строчку кода, как
if( 1 ) do_something();
Очевидно, что условие выполнится всегда, поэтому переписываю
do_something();
Итого: не надо путать присваивание ( = ) и сранение ( == ).
Выделите текст и нажмите для цитирования  #  
0   [13.04.2012 23:50] #682851   Все ответы пользователя

#752603 пишет ....

Я не хочу спорить.
Но то что Вы пишите это не условия.
Я знаю, что можно покороче написать код, чтобы результат был такой же.
http://wmgid.ru/ishodnik_1.png На мой взгляд это самый короткий путь.
Раз уж Вы намного опытнее меня, то извените, возможно я ошибаюсь или не так научили. Я же говорю, что не очень хорошо освоил, да и в свое время мы С++ прошли всего за какихто 2 месяца.
Так что у меня познания весьма поверхностные.
Да и еще Вы кажется написали сейчас на бэйсике. Хотя я могу и ошибаться. Просто я знаю, если Ваш код вставить в текстовый документ, а затем изменить его расширение на .bat, т.е. сделать батник, то этот батник будет работоспособен!
А для того, что написал, я необходим компелятор. В батнике этот код работать не будет!
Я использую компелятор. codeblocks-10.05
Ну а дальше, что он компелирует решайте сами, но нам говорили, что это С++

Добавлено спустя 04 минуты 07 секунд
Вот еще почитайте:
http://ru.wikipedia.org/wiki/Code::Blocks

Добавлено спустя 06 минут 18 секунд
Вот и еще:
http://ru.wikipedia.org/wiki/Файл:Debbuging_in_Code_Blocks.png
Выделите текст и нажмите для цитирования  #  
+1   [14.04.2012 00:12] #752603   Все ответы пользователя

#682851 пишет perfectum

Ради бога, не обижайтесь. Я ни в коем случае ни кичусь, я имел ввиду, что сумею прочитать сам. Последнее время языки стали очень похожи с виду, но дьявол в деталях, на Бейсике я здесь не писал. В bat файлах что-то мне сомнительно, что Бейсик будет выполняться. И еще, Ваш код на С, а не не на С++. Он будет компилироваться и там, и там. Но функции scanf и printf для форматированного ввода-вывода в С++ устарели. Там есть для этого отличный инструмент -- потоки. Ну да ладно... А за компилятор спасибо, что подсказали, давно искал хороший бесплатный. Попробую, надеюсь, понравится.
Проголосовали: #682851

Видеоурок

Вопрос-ответ

НОВОСТИ
21.02.2024QIWI
подробнее>>
31.12.2023С Новым 2024 Годом!
подробнее>>

© 2004-2024 «WMMAIL» Пользовательское соглашение