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

Стратегия "получение ресурса есть инициализация" - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Непонятки с wchar_t http://www.cyberforum.ru/cpp-beginners/thread837244.html
Прошу помощи: что-то не так с wchar_t. Не копирует имена файлов. Содержание program_config.txt config.cfg C:\\Projects\\abx.txt static wchar_t* charToWChar(const char* text)
C++ Ошибка ms vs c++ rl Здравствуйте! Я хотел запустить прогу мою на другом компе и мне выскочила такая ошибка. This application has requested the Runtime to terminate it in an unusual way. Библиотеки VS c++ пробовал переустанавливать. Надеюсь на вашу помощь http://www.cyberforum.ru/cpp-beginners/thread837234.html
Написать функцию, которая переворачивает строку C++
Написать функцию, которая переворачивает строку. Заголовок функции: void reverseStr (char *s); Написать программу, которая принимает от пользователя набор строк (массив строк), переворачивает все строки, выводит все преобразованные строки на экран.( В программе использовать написанную функцию)! Помогите пожалуйста!
C++ Игровая программа ипподром"
Добрый день, помогите пожалуйста: Необходимо создать игру "Ипподром". Я сделал в консоле что мог, не могу заставить своих "сосисочек" бегать вместе, но с разной скоростью. Получается что они бегут либо в месте, либо сперва бежит одна, а потом вторая.. помогите реализовать совместный бег "сосисок", но с разной скоростью! // ippodrom.cpp: определяет точку входа для консольного приложения. // ...
C++ Работа с указателями http://www.cyberforum.ru/cpp-beginners/thread837193.html
Помогите пожалуйста объяснить, не понимаю почему число присваемое через указатель *А в кавычках, и равны ли *А и просто А??? char *A = "123456789"; unsigned B = 1; char *X = A + B; char *Y = A - (-B); Не используя, компилятор дать ответ равны или нет будут значения X и Y. Объяснить свой ответ.
C++ ошибка в задаче на палиндром Ребят помогите пожалуйста. Задачка найти палиндром в массиве. Писал-писал и в итоге в ф-ии последнее условие if (arr_t1==arr_t2) постоянно выводит ложь, не понимаю, почему оно мне врет((( //Дан целочисленный массив от 0..N и //необходимо найти самый длинный палиндром в массиве #include <iostream> #include <conio.h> const int n = 10; подробнее

Показать сообщение отдельно
DrOffset
6461 / 3835 / 886
Регистрация: 30.01.2014
Сообщений: 6,630
28.06.2014, 02:09     Стратегия "получение ресурса есть инициализация"
Цитата Сообщение от TheChosenOne Посмотреть сообщение
try блока ? Ну тогда должен вызываться деструктор всего объекта,а этого не может быть т.к. объект не был создан.
Не try блока, а в том числе try блока. Той области видимости, где была попытка создания объекта (try-блок, функция, scope и т.п.). Уже созданные подобъекты принадлежат этой же области видимости, что и главный объект. Вот такой же код не вызывает вопросов?
C++
1
2
3
4
5
6
7
8
9
10
11
12
void foo()
{
    A a;
    B b; 
 
// throw и выход из области видимости    
    throw std::logic_error("");
         // вызов ~B()
         // вызов ~A()
    
    C c; // ~C() не вызывается 
}
Ситуация c подобъектами эквивалентна вышеописанной, представим что С у нас главный объект, а A и B - подобъекты.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class C
{
public:
    C() : a()
        , b() 
    {
        throw std::logic_error("");
    } 
 
private:
    A a;
    B b; 
}
 
// порядок создания тот же
void foo()
{
//  A a;
//  B b;
    C c; // throw и выход из области видимости 
         // вызов ~B()
         // вызов ~A()
         // ~C() не вызывается 
}
 
Текущее время: 23:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru