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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
#1

class && constructor - C++

29.06.2012, 23:16. Просмотров 469. Ответов 3
Метки нет (Все метки)

День добрый!
Создаю кое-что для кое-чего, но внезапно столкнулся с такой проблемой...
Прототип моего класса имеет вид:
C++
1
2
3
4
5
    ...
public:
    cacher( char *, uint32_t );
    ~cacher();
    ...
* Конструктор абсолютно такой же, но, при создании класса через new возникает такая проблема:
test.cpp:12:41: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
в строке:
C++
1
    cacher * c = new cacher( "test.bin", 8 );
Вопрос: я чего-то не знаю, что-то делаю не правильно или это глюк GCC 4.7.1 ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.06.2012, 23:16     class && constructor
Посмотрите здесь:

Abstract class & STL - C++
list<CGraphicsObject*> objS; objS.push_back(new Circle("Circle" , 1)); objS.push_back(new Square("Square" , 2)); objS.push_back(new...

Оператор if и логическая операция И (AND) && - C++
Вод подскажите что будет быстрей обрабатываться процессором: if(!a&&!b) { a+b; } или

Не работает gettimeofday(&tv1, &tz); - C++
#include <iostream> //#include <сtime> #include <time.h> #include <windows.h> #include <math.h> using namespace std; const...

Объясните почему не срабатывает И (&&) - C++
Есть задача нахождения наибольшего общего делителя для двух чисел. Программу я написал.Но почему когда я указывал в цикле И (&&), цикл...

условие if (x && y && z ) - C++
День добрый. подскажите что не так: if(norcub() && nevk() && norok()) { cout<<"Условие не выполнено.\n"; count=30; } // эти 3...

Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)') - C++
Компилирую test: g++ test.cpp -L. -lwrk -lboost_serialization -o programwrk -std=c++0x Так же компилирую libwrk до компиляции...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Evg
Эксперт CАвтор FAQ
17533 / 5771 / 369
Регистрация: 30.03.2009
Сообщений: 15,873
Записей в блоге: 26
29.06.2012, 23:32     class && constructor #2
В прототипе конструктора замени "char*" на "const char*". Т.к. строковой литерал имеет тип const char*

Добавлено через 5 минут
Смысл предупреждения в том, что бы берёшь указатель на const-объект и передаёшь его в функцию, где указатель не-const. Т.е. компилятор допускает, что в функции возможна модификация по указателю, коль скоро на нём нет признака const
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
30.06.2012, 00:01  [ТС]     class && constructor #3
Evg, спасибо, помогло. Странно что впервые это встречаю..)

Добавлено через 24 минуты
Цитата Сообщение от Evg Посмотреть сообщение
что бы берёшь указатель на const-объект и передаёшь его в функцию, где указатель не-const.
Смысл того что ты хотел сказать понял, но теперь мне не понятно почему этого предупреждения нет в этом случае:
C++
1
    cacher  c( "test.bin", 8 );
Ведь я же беру указатель на тот же 'const-объект' и передаю его туда же по-сути!...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2012, 01:32     class && constructor
Еще ссылки по теме:

Ошибка [Linker error] undefined reference to `Triangulation::distPoints(tagPOINT&, tagPOINT&)' - C++
Добрый день, уважаемые форумчане есть функция которая считает площадь треугольника double Triangulation::squareTriang(POINT &t1, POINT...

функции && строки - C++
ребята,пожалуйста,помогите.В понедельник практику сдавать,а эти задачи НЕМОГУ. 1. Написать процедуру для суммирования матриц. С ее...

Move конструктор && - C++
Никак не могу понять, что же он делает. Вроде как пишут, что он даже предпочтительнее, чем всякие const MyType& var в качестве параметров в...

Что значат && и || - C++
Вроде бы результат кода один и тот же первый код #include <stdio.h> #define MAX_STRING_SIZE 20 int main() { FILE *pFile;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Evg
Эксперт CАвтор FAQ
17533 / 5771 / 369
Регистрация: 30.03.2009
Сообщений: 15,873
Записей в блоге: 26
30.06.2012, 01:32     class && constructor #4
Вот тут хз... Смысл данного действа по большому счёту тот же самый (с точки зрения передачи строки). Может тут есть ещё какая-то великая логика, но мне она недоступна
Yandex
Объявления
30.06.2012, 01:32     class && constructor
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru