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

Пара вопросов по С++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обработка log-файла http://www.cyberforum.ru/cpp-beginners/thread153931.html
Добрый вечер! Ребята, столкнулся с проблемой, и никак не могу найти ей элегантное решение. В голове крутится всякое, но четко понять не могу. Кроме того, хочется определенной красоты решения. Суть проблемы: Пишу обработчик log-файла Apache. Строка этого файла имеет такой вид: 127.0.0.1 - - "GET / HTTP/1.1" 200 1833 127.0.0.1 - - "GET /style.css HTTP/1.1" 200 517 Мне необходимы данные...
C++ Подстрока Всем Приветы, вопрос на сейчас такой: Как получить подстроку из данной строки, если данная задаётся пользователем? Вот пример: #include <iostream> using namepace std; int main(){ char command; cin >> command; http://www.cyberforum.ru/cpp-beginners/thread153928.html
C++ Замена повторов в массиве
Имеется рандомный одномерный массив. Необходимо подсчитать количество повторяемых чисел, стоящих радом и заменить их. Например: дано: 5 -6 8 8 8 12 -62 0 0 0 0 0 0 0 6 12 8 -9 0 1 заменить на: 5 -6 N 3 8 12 -62 N 7 0 6 12 8 -9 0 1 8 8 8 -> N 3 8 (N-индикатор, 3-число повторов цифры 8) 0 0 0 0 0 0 0 -> N 7 0 (N-индикатор, 7-число повторов цифры 0)
C++ Классы / наследование / полиморфизм
Решите, если несложно, программа вроде довольно простая..., но с с++, я пока неочень... Добавлено через 36 минут вот что я написал..., а с инициализацией и полиморфизмом непонятно :wall: class A { } class B: A {
C++ Прошу проконсультировать http://www.cyberforum.ru/cpp-beginners/thread153886.html
Добрый вечер!) меня поситила волнующая идея, так как учусь на програмера и что важно хочу этого сам. в общем хочу начать разработку приложений до начала обучения. Мне стало известно что мы будем писать курсовую в виде симулятора файловой системы, прошу вас помочь мне в этом, так скачазть проконсультировать. Ах, да. Если тема не к месту, приношу извинения... Раз тема на форуме, то, я...
C++ Как открыть привод в DEV C++? Вся инфа, найденная в гугле, сводится к сиспользованию mciSendString Неработоспособность этой функции не предполагается. Но, тем не менее, она имеет место быть. Это не работает: #include <windows.h> #include <mmsystem.h> int main() { mciSendString ("Set cdaudio door open wait", 0, 0, 0 ); return 0; подробнее

Показать сообщение отдельно
el Gato Estelar
 Аватар для el Gato Estelar
9 / 9 / 0
Регистрация: 26.05.2010
Сообщений: 36
16.07.2010, 09:03     Пара вопросов по С++
возникло несколько вопросов, с которыми что то не могу никак разобраться

1. Как происходит выравнивание при создании структуры?

C++
1
2
struct { double a; int b; char c;};
struct { char a; int b; double c; };
ведь должны возвращать разный размер? В первом всё достраивается до double, а во втором сначала до int, потом до double? Но тем не менее, проверив в двух компиляторах(в VS2005 и bcc5.5) я получил результат и там и там 16(double=8), который никак не могу понять

2. Про добавление константности
пусть есть класс:

C++
1
2
3
4
5
6
7
8
9
10
11
class A {
public:
 A() {}
 A(const A&) { printf("Copy constructor called\n"); }
 void doSmth() { printf("Non-const method called"); }
 void doSmth() const { printf("Const method called"); }
};
...
A a;
a.doSmth();
(static_cast<const A>(a)).doSmth();
т.е. хочу вызвать константный и неконстантный методы. Но с константным и начинаются проблемы.
C++
1
static_cast<const A>(a)
почему то игнорируется, результат этой конструкции -- класс А(проверял через typeid). Не могу понять почему? Если поставить приведение к ссылке - всё будет работать, оно и понятно - мы просто сообщаем компилятору, что в этой конструкции адресуется объект типа "const A", но почему не срабатывает простое приведение? Я считал, что в этом случае, будет создаваться временный объект нужного типа, но судя по тому, что копирующий конструктор не вызывается, этого не происходит. Почему?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru