Ряд вопрсов по C++. |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Ряд вопрсов по C++. |
renesko1 |
10.04.2008 16:58
Сообщение
#1
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Вопрос 1.
А также сказать, сколько занимает в памяти следующий объект:
Итого : 6 байтов правилбно ? ps Я только начал изучать С++ поэтому порой буду задавать простые и глупые вопросы. Сообщение отредактировано: renesko1 - 10.04.2008 17:38 -------------------- typedef void Śūnyatā ;
|
volvo |
10.04.2008 17:22
Сообщение
#2
|
Гость |
Во-первых, это машинно- и компиляторо-зависимо (у меня на машине sizeof(int) = 4, а не 2), во-вторых зависит также от установок выравнивания (если откомпилировать без ничего, результат будет один, если с #pragma pack(1) - то результат другой), ну и в третьих, кто тебе сказал что виртуальная функция тоже что-то занимает, и это надо считать?
|
renesko1 |
10.04.2008 17:30
Сообщение
#3
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
эээ ну я ... не знаю ....
+ у меня вопрос можно ли здесь еще задавать небольшие вопросы или создовать новую тему ? -------------------- typedef void Śūnyatā ;
|
klem4 |
10.04.2008 17:33
Сообщение
#4
|
Perl. Just code it! Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Если будет много небольших вопросов, то лучше в этой ветке задавай, только нумеруй их тогда, чтобы не возникло путаницы при ответах и тему переименуй в "Ряд вопросов по с++" например.
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
renesko1 |
10.04.2008 18:14
Сообщение
#5
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Вопрос 2.
Не могу точно для себя понять зачем перед методами в классе ставить void ? -------------------- typedef void Śūnyatā ;
|
DocNo |
10.04.2008 18:36
Сообщение
#6
|
Новичок Группа: Пользователи Сообщений: 13 Пол: Мужской Репутация: 0 |
не обязательно void.
можно и int. |
volvo |
10.04.2008 18:38
Сообщение
#7
|
Гость |
Чтобы объяснить компилятору, что метод ничего не возвращает. Вот синтаксис такой...
|
renesko1 |
10.04.2008 19:05
Сообщение
#8
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Вопрос 3.
Вот написал класс описввающий фигуру rectangle. Он условен но меня волнует правильность.
Сообщение отредактировано: renesko1 - 10.04.2008 19:06 -------------------- typedef void Śūnyatā ;
|
volvo |
10.04.2008 19:26
Сообщение
#9
|
Гость |
Цитата меня волнует правильность. В каком смысле "правильность"? Синтаксически пример неправильный, так что компилятор его не пропустит: отсутствуют точки с запятой в конце каждой строки, и после описания класса (а там, где они не нужны - присутствуют), слова then в С/С++ просто нет, так же как и функции sqr, ну и case-sensitivity языка тоже не даст программе откомпилироваться, если используешь тип int, то это не должен быть ни Int , ни INT... А только маленькими буквами...Ну, а логически - фрагмент слишком маленький, чтобы что-то сказать... P.S. Очень похоже на попытку дословного перевода с Паскаля... |
renesko1 |
10.04.2008 19:32
Сообщение
#10
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Просто до этого у меня была монополия pascal
-------------------- typedef void Śūnyatā ;
|
мисс_граффити |
11.04.2008 0:31
Сообщение
#11
|
просто человек Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
class, не classe
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
AlonZo |
11.04.2008 8:36
Сообщение
#12
|
Новичок Группа: Пользователи Сообщений: 20 Пол: Мужской Репутация: 0 |
У меня тоже вопрос. Есть некий txt файл с числами, расположенными по числу на каждой строке, например:
1 2 3 И простая программа, которая считывает эти числа и выводит на экран. Проблема в том, что последяя цифра в файле дублируется и еще раз выводится. Что я не так делаю? #include <iostream.h> Т.е. результатом будет: 1 2 3 3 //Почему дублирует? |
volvo |
11.04.2008 9:13
Сообщение
#13
|
Гость |
Цитата Почему дублирует? Потому, что последняя строка - пустая... После прочтения последнего числа (тройки) конец потока еще не достигнут, значит, происходит попытка считать еще одно число. А не получилось, price остается прежним, печатается, и только теперь in.eof() возвращает истину... Чтобы избежать дублирования, подправляем чуть-чуть:while(in >> price) { |
renesko1 |
11.04.2008 14:57
Сообщение
#14
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Спасибо, мисс_граффити и volvo, я купил себе наконец то книжку и теперь понимаю что за бред я понаписал.
-------------------- typedef void Śūnyatā ;
|
renesko1 |
15.04.2008 19:08
Сообщение
#15
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Вопрос 4.
Как передать в функцию сточку для работы с ней ? -------------------- typedef void Śūnyatā ;
|
volvo |
15.04.2008 19:19
Сообщение
#16
|
Гость |
Смотря что ты подразумеваешь под "строчкой" - это может быть и char *, и std::string, я уж не говорю о других обертках, которых в каждом компиляторе/библиотеке куча...
Если char *, то вот так, скажем: ... |
renesko1 |
15.04.2008 19:26
Сообщение
#17
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Ясно.
-------------------- typedef void Śūnyatā ;
|
renesko1 |
20.04.2008 20:09
Сообщение
#18
|
поиск Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: 2 |
Вопрс 5.
"Написать иерархию классов, которые в конструкторе принимает строку и у которых есть открытый метод print, которые выводят эту строку на экран или в файл на диск." Честно пытался понять, но както так не очень далеко ушел. Можно хотя бы легкий пример. -------------------- typedef void Śūnyatā ;
|
volvo |
20.04.2008 20:41
Сообщение
#19
|
Гость |
Не совсем понятно, зачем тут иерархия, это прекрасно делается в одном классе:
#include <iostream> |
Bo2nik |
22.04.2008 18:39
Сообщение
#20
|
Новичок Группа: Пользователи Сообщений: 30 Пол: Мужской Реальное имя: Никита Репутация: 0 |
Вопрос 6.
Объясните, пожалуйста, почему в отличие от функции printf() аргументами для функции scanf() могут быть только адреса объектов программы, в частном случае - адреса ее переменных. Глупый вопрос, но буду очень признателен. |
Текстовая версия | 29.04.2024 1:49 |