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

Класс, каждый экземпляр которого имеет поле UID с гарантированно уникальным значением - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Реализовать АТД “Очередь” на основе усовершенствованного циклического массива http://www.cyberforum.ru/cpp-beginners/thread1118744.html
Прошу помочь с написанием решения для данной задачи: Создайте реализацию АТД “очередь” на основе усовершенствованного циклического массива, который автоматически увеличивает размер вдвое при переполнении, подобно вектору. Все остальные характеристики циклического массива должны быть сохранены. Продемонстрируйте работоспособность решения при помощи тестовой программы. Заранее благодарен.
C++ Закодировать файл. Взять 7 байт. Первый бит каждого байта переместить в 8 байт Нужно открыть бинарный файл и закодировать следующим образом. Взять 7 байт. Первый бит каждого байта переместить в 8 байт. То есть, например: 10101010 01010110 00001100 00011000 00011000 00000111 00011100 Нужно превратить в: 0101010 http://www.cyberforum.ru/cpp-beginners/thread1118740.html
C++ Записать программу, выводящую изображенную фигуру
Пользователь вводит некий символ. Записать программу, выводящую изображенную на рис. 2.10 фигуру, где вместо символа «*» должен быть символ, введенный пользователем. ***** ** * ** *****
UrlDecode, Работа с кириллицей C++
Сам пишу на C#. Тут возникла задача "общания с прогой", написанной в С++ 6.0. Проблема возникла с передачей данных с русским текстом (как есть работает, но надо шифровать, поэтому заворачиваю в Base64, который как раз и неработает), при отсылке параметров решил кодировать в urlcode (например...
C++ Координаты вектора умножить на число http://www.cyberforum.ru/cpp-beginners/thread1118704.html
вот есть класс, мне нужно координаты вектора умножить на число,через функцию используя прототип.Как это сделать ? Функцию в С++ еще не проходили, сказали делать по подобию Си #include "stdafx.h" #include "iostream" using namespace std; class Vektor { public:
C++ Калькулятор в столбик Возникла проблема не понимаю почему при умножении 567 * 900 = 50103, (программа недробляна поэтому можно только умножать одинаковые цифры по количеству а точнее показывать цифры для сложение) void Multiplication_Of_Numbers() { int i = 0,j,o=0,tum=0,k0=0,sum; while (number.x>0) { number.mas = number.x % 10;number.x /= 10;//разъединяет числа (nnn на n,n,n) } подробнее

Показать сообщение отдельно
aLarman
636 / 557 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
14.03.2014, 09:53     Класс, каждый экземпляр которого имеет поле UID с гарантированно уникальным значением
Цитата Сообщение от taras atavin Посмотреть сообщение
А как тогда передать параметр-экземпляр по значению?
Цитата Сообщение от taras atavin Посмотреть сообщение
2. Как раз передача по ссылкам должна быть основным синтаксисом передачи параметров.
Вы же вроде хотите передавать только по сслыкам
Цитата Сообщение от taras atavin Посмотреть сообщение
И как вернуть экземпляр в виде значения функции/оператора?
если это ф-ции и операторы принадлежащие классу, они смогут воспользоваться ими, и при возвращении по значению наверное не надо увеличивать UID вы же внутри ф-ции\оператора будете создавать новый экземпляр

Добавлено через 2 минуты
Вобщем получается так, 1) не вызывать конструктор копии для инициализации - тогда в конструкторе копии не инкрментить UID
конструктор копии оставить открытым и использовать если надо в ф-циях,
2) запретить конструктор копии (что бы нельзя было в принципе инициализировать объекты этим конструктором) тогда им смогут воспользваться только ф-ции члены и френды

Добавлено через 1 минуту
от сюда следуют некоторое ограничения, в 1) не понятно как явно запретить использование конструктора копии при инициализации (вроде таких механизмов нет, или я просто их не знаю)
2) сами понимаете, нельзя будет копировать
 
Текущее время: 04:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru