![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
renesko1 |
![]()
Сообщение
#1
|
![]() поиск ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: ![]() ![]() ![]() |
Вопрос 1.
А также сказать, сколько занимает в памяти следующий объект:
class A
{
int i; 2 byte
short s; 1 byte
static int si; 2 byte
virtual void vf(); 1 byte
}
Итого : 6 байтов правилбно ? ps Я только начал изучать С++ поэтому порой буду задавать простые и глупые вопросы. Сообщение отредактировано: renesko1 - 10.04.2008 17:38 -------------------- typedef void Śūnyatā ;
|
![]() ![]() |
renesko1 |
![]()
Сообщение
#2
|
![]() поиск ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: nir Репутация: ![]() ![]() ![]() |
У меня вопрос, как сделать это с шаблонам ?
Что бы качестве параметров класс принимал любой класс, где определена операция вывода. Где идет проверка времени компиляции, что инстанцируемый класс имеет необходимую функцию ( чтоб избежать непонятных сообщений компилятора при попытке иснтанцировать левый класс) . Мне не нужен код, а какой нибудь пример на заданную тему ...
#include <string>
#include <iostream>
#include <fstream>
#include<memory>
using namespace std ;
//******************************************************************
class base {
public :
virtual void print () = 0 ;
} ;
//***************************************************************
class printmonitor : public base {
string outString ;
public :
printmonitor (const string& userString) {outString = userString;}
void print () {cout << outString ;}
~printmonitor () ;
} ;
//***************************************************************
class printinfile : public base {
string outString ;
public :
printinfile (const string& userString ) {outString = userString ;}
void print () ;
~printinfile() ;
} ;
//***************************************************************
void printinfile::print () {
ofstream out("outfile.txt",ios::out) ;
if(!out) {cout <<"Cannot open file test for writing " << endl ; }
out << outString ;
out.close () ;
}
//***************************************************************
int main()
{
//pprintmonitor = new printmonitor("test my program 1");
//pprintinfile = new printinfile("test my program 2");
auto_ptr<base> pprintmonitor (new printmonitor("test my program 1")) ;
auto_ptr<base> pprintinfile (new printinfile("test my program 2")) ;
pprintmonitor->print();
pprintinfile->print();
//delete pprintmonitor;
//delete pprintinfile ;
return 0 ;
}
Сообщение отредактировано: renesko1 - 12.07.2008 15:16 -------------------- typedef void Śūnyatā ;
|
![]() ![]() |
![]() |
Текстовая версия | 27.07.2025 3:11 |